仲間との共同で領しているLinuxサーバを諸事情で機種変更し、そのため基本となるディスクの容量が以前より減少。
そのことは特別問題ではないけれど、格納されたファイルのウイルスチェックや容量の拡大が難しいため何か方法がないかと模索していたところ、ひょんなことから「cifs」という機能(サービス)を利用してWindowsの共有フォルダをマウントできるということを知りました。
そこでLinuxの共有DirectoryをWindows側に置くことにより、格納されているデータをWindowsのウイルスソフトでチェックすることにしました。共有完了までは以下の手順です。
1.Windowsの共有フォルダを作成します。(既存のフォルダでも可)
2.共有フォルダのアクセス権を設定して、MicrosoftNetworkでもアクセスできるようにする。
※共有フォルダをアクセスする際にIDとパスワードを設定しなくとも問題は無いと思いますが、私は念のために設定
例) ID:User パスワード:User-ps
3.可能ならば他のPCから共有したフォルダがアクセスできるか確認をする。
4.Linuxにログイン(GUIでもターミナルでも可)する。今回の設定はGUIで行っていないので、私はSSHで鍵認証方式によりログインです。
5.今回「cifs」を使ってWindowsの共有フォルダ(Windowsの場合にはDirectoryを表現するのではなくフォルダになります)をLinuxでマウントします。
6.Linux側に「cifs」がインストールされていなければならないのでインストールします。
# yum –y install samba-client
7.Windowsの共有フォルダをマウントするために、空のDirectoryを作成します。
# mkdir sample-dir
8.手動で一時的にマウントし、利用できるか確認します。
# mount –t cifs //アクセス先PCの名前またはIPアドレス/共有フォルダ名 sample-dir
または
# mount –t cifs //アクセス先PCの名前またはIPアドレス/共有フォルダ名 sample-dir –o username=Windowsuser
Password:User-ps
※マウントする先は単純な階層のDirectoryではなく、多階層の先のDirectoryでも可
今回私は友人とのデータ共有を兼ねているので、「/home」下にマウントポイントを作成しました。
9.マウントの確認
# mount
//アクセス先PCの名前またはIPアドレス/共有フォルダ名 /sample-dir type cifs (rw,mand)
上記のような感じで(各環境により多少状況が異なるので)表示されたならば、マウントはまず完了です。
また、ひとまず「root」でマウント先をアクセスし、新規作成、更新、削除が可能か確認します。可能であれば設定もOKです。
10.各自のホームDirectory空もアクセスできるように設定
マウントはできてもそのままでは利用者がいちいちマウントポイントへ移動する必要があるので、マウントポイントを各ユーザのホームDirectoryにシンボリンクリンクを作成しそのままアクセスできるように設定します。
# cd /home/ユーザDirectory
# ln -s /sample-dir シンボリックリンク名
# cd シンボリックリンク名
# ls -l
作成したシンボリンクリンクへ移動し、Directoryの中が表示されるか確認します。
ここで注意が必要なのは、作業を「root」で行っている場合、何も問題なく作業が進むかも知れません。しかし、実施のユーザアカウントでログインした場合、アクセスできないかもしれません。その場合にはシンボリックリンク先のDirectoryのpermissionなどを確認してみてください。案外と簡単ではありますが、その部分でひっかかり先へ進めないことも多いですので。
※確認方法として、シンボリックリンクを作成したDirectoryのユーザにスイッチしてアクセスしてみることをお勧めします。
11.自動マウントすることを考慮
このままだと、Linuxを再起動すると、せっかくまうのした共有フォルダが再起動のたびに解除されてしますので、自動でマウントするように設定します。各ユーザのホームディレクトリに作成したシンボリックリンクは削除されないのでそのまま。
12.設定(fstab)
元の「fstab」を保存
# cp –p /etc/fstab /etc/fstab.org
「fstab」の編集
# vi /etc/fstab
/dev/VolGroup00/LogVol00 / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/VolGroup00/LogVol01 swap swap defaults 0 0
//アクセス先PCの名前またはIPアドレス/共有フォルダ名 sample-dir cifs username=User,password=User-ps,uid=*1,gid=*2,file_mode=0777,dir_mode=0777 0 0
赤い部分が今回追加した部分です。
※1:マウントポイントのオーナーID
※2:マウントポイントのオーバーグループ
file_mode:マウントポイント内のファイルに設定するpermission
dir_mode:マウントポイント内のDirectoryに設定されるpermission
13.Linuxの再起動
「fstab」の設定が完了したならば、LinuxOSの再起動を行い、設定したマウントポイントへ正常にアクセスできるか確認します。
再起動は「shutdown –r now」または「reboot -n」で再起動
14.確認
設定後の最終確認ですので、ログインは一般ユーザでおこないましょう。シンボリックリンク先にアクセスし、ファイルの作成、Directoryの作成、ファイルの削除、変更などができれば完了です。
15.その他
今回Linuxにマウントした共有フォルダは最初に書いたようにWindowsの共有フォルダです。したがってWindowsからはLinuxにわざわざログインして、マウントした先でデータ操作をする必要もなく、普通にWindowsのマイネットワークからアクセスし、操作できるので通常はこちらから操作となります。その際にはどちらで操作しても共有フォルダの内容はリアルに変更されるので操作する際には注意ですね。