◆ Windowsの共有を設定して Linuxでmount するだけ

前にWindow間のファイルの共有を書きましたが 今回はLinuxからも見れる方法です
Windows側の設定はWindowsどうしにも使えます

VirtualBoxなどの仮想化ソフトを使っていて同じPC内にLinuxがある場合なら 仮想化ソフトの機能でフォルダ共有があったりしますけど 今回は物理的に別なPCから接続する方法です

仮想環境のゲストとホスト間でもネットワーク通すことになりますが この方法で共有することもできます

Windows

共有設定

まず \\localhost とか \\自分のPC名 とエクスプローラのアドレスバーに入力して共有されてるフォルダを確認します

winlin-share-01

前回同様 Users しかありません

次に共有したいフォルダを決めます

決まったら プロパティを開きます
後は↓の流れで開いていきます

winlin-share-02

共有タブの 「詳細な共有」を押して 「このフォルダーを共有する」 にチェックします
共有名に好きな名前を付けます
この名前は Users みたいに \\PC名 で接続したところに表示される共有されてるフォルダの名前になります
実際のフォルダ名に合わせる必要はないです
この例では sample というフォルダに共有名 sample-share をつけてます

次に 「アクセス許可」 というところを押します
デフォルトは「Everyone」だけで 「読み取り」にだけチェックが付いてるかと思います
「全ユーザが読み取り専用で共有できる」で良ければこのままでいいです
書き込みも両方したいなら 「フルコントロール」 にチェックします

全ユーザだと嫌だから 新しくユーザを作ってそのユーザでだけ共有できるようにしたい ということもできます
その場合は まず 「追加」 を押して新しく作ったユーザを選択します
すると 上のEveryoneの出ているところに追加されたユーザも表示されるので そのユーザを選択してから 下側のフルコントロールにチェックすればそのユーザでだけ書き込みもできるという設定になります

終わると さっきの共有されてるリストに増えているはずです

winlin-share-03

共有やめたくなったら さっきの 「このフォルダーを共有する」 のチェックを外せばここから消えます

確認する

いきなりLinuxだとうまくいってないときの確認のハードルが高いので 同じネットワークにある他のWindowsから \\PC名 でアクセスして確認します

接続するとユーザ名とパスワードを入れるところが出ると思います
そこに共有を許可したユーザ名を入れます
パスワードはそのユーザがPCを使うときにつかってるやつです

共有したフォルダが見えて開いてちゃんと中身が見れればOKです
変更許可(フルコントロール)にチェックしてればファイルの追加や編集や削除ができるはずです

Linux

では Linux で接続する方法です
RedHat系ではcifs-util?みたいなRPMをインストールする必要がある場合もあります
fedoraやkororaは インストールタイプにもよるかと思いますけど最初から入ってたような気がします
Ubuntuも入ってそうです たぶん(100%カンです)
なければそれっぽいもの入れてみてください

接続といってもただ mount するだけです
コマンドでするなら
mount -t cifs -o username=*****,password=***** //win-pc/sample-share /mnt/win/sample

こんな感じです
-o で書いてるオプションには uid, gid, file_mode, dir_mode など色々書いてるサンプルもありますが 必要そうなら追加してください

fstab や autofs などでも mount できます
fstab だとこんな感じです
autofs は fstab に近いので 設定ファイルに書いてるサンプルみながら書き換えれるはず
//win-pc/sample-share /mnt/win/sample username=*****,password=*****,uid=1000,gid=1000,file_mode=0666,dir_mode=0777 0 0

こっちだとオプションいろいろ付けて書いてみました

//win-pc/sample-share
ここが 接続先の情報です
Windowsの \\ みたいにネットワーク越しだと // になります
{PC名}/{共有フォルダ名}
で さっき共有名をした sample-share を指定してます

/mnt/win/sample
ここは Linux ローカルのパスです
このフォルダへアクセスすると //win-pc/sample-share へのアクセスになります
ここのパスのフォルダは存在して 空でないとダメです

username と password は共有を許可したユーザのです

おまけ WindowsからLinux

FTPとかSCPでいいんじゃないかな?

考えてみるとその2つしか使ったことなかったです
ですが WinSCPでの接続で十分すぎるので特に困ることもないです

そんなわけで エクスプローラで \\PC名 でLinuxのフォルダ見る方法は知らないです



Windows で Linux のフォルダを見る方法の記事を書いたのでリンク
Linux のフォルダを Windows からアクセスできるようにする