LinuxのCIFSでファイル共有
ファイルサーバーは
CIFS
Common Internet File System
で通信することがほとんど
これは、Windowsのファイル形式の
SMB
Server Message Block
と互換性があるから
WindowsからCIFS形式のファイル共有へ接続するには
パスに
\\ファイル形式共有のIPアドレス\
と入力する
Linuxの標準的ファイル共有は
NFS
Network File System
このため、Linuxの機能では
Windowsのファイル共有にアクセスできない
LinuxからCIFS形式のファイル共有を利用するには
samba-clientパッケージをインストールする
CentOSなら
yum install samba-client
でインストール
これで、LinuxからWindowsのファイル共有へアクセスするには
mount.cifs //IPアドレス/共有ディレクトリ /mnt -o user=ユーザー名
とする
例えば
mount.cifs //192.168.10.100/cifstest /mnt -o user=test
というように
する
mount.cifs
は、CIFS形式のファイル共有へアクセスするためのコマンド
-tオプションに
指定するファイルシステムの形式を変更することで
様々な形式の記憶領域を
Linuxから使えるようになる
/mnt
は、ファイル共有の領域を接続するディレクトリの指定
コマンドを実行すると
/mnt の下へ共有ディレクトリの中身が表示される
-o
は、接続時のオプションを指定
今回は、userを指定して
接続に利用するユーザー名を指定している
指定しないと
環境変数のUSERの値を使うことになる
他には
rw
ro
などがあり
rwは、接続先を読み書き可能にして
roなら、読みとり専用になる
これで、ファイル共有がLinuxからでもできるけど
OSを再起動したら、またコマンドで接続
というのは面倒なので
OS起動時に自動接続されるように
/etc/fstab
を編集する
ただし、設定を失敗するとOSが起動しなくなるため
最初は仮想マシンで練習したほうが無難
書き方は
//IPアドレス/共有ディレクトリ名 /mnt cifs username=ユーザー名 0 0
あと、LinuxからNFS領域を利用するなら
mount -t nfs NFSサーバーのIP:/NFSで公開しているディレクトリ /mnt
となる
例えば
mount -t nfs 192.168.10.100:/nfs /mnt
なら
/mntに
192.168.10.100の
/nfsディレクトリが
自ホストの/mntへ接続される
接続の解除は、umountコマンドで行う
umount /mnt
ただし、ファイル共有ディレクトリを利用中のユーザーがいると
接続の解除ができない
もし、他に使っているユーザーがいるなら
device is busy
と表示される
この場合
fuserコマンドを使うことで、利用中のユーザーを確認できる
fuser -m ファイル共有ディレクトリ名
このfuserコマンドを使うことで
どういう操作をしているかも把握できる
—
から送られてきた高速メモ帳