SSブログ

NFSでマウントしてみた。 [Linux]

誤解を恐れずに簡単に言うと、NFSというのはWindowsのファイル共有と似たようなもので、SambaとかCIFSと言われているものと似たようなものである。サーバ同士のファイルシステムをつなげるもので、ファイルのやり取りが継続的に使える。


クライアント側でマウントポイントにファイルがある場合、NFSをマウントした時にファイルをNFSサーバ側へ送ってくれるのかどうか、という話。

結果から言うと、マウントするとNFSサーバ側のディレクトリで置き換えられて、一時的にクライアントのマウントポイントにあったファイルが消える。NFSのマウントを切ると、見えなくなっていたクライアントのファイルが復活する、といった具合。

 

例えば
nfs-server
nfs-client
という名前まんまのマシンがあったとします(DNSがないところはIPアドレスとかなのかな?)。

大体ここを見ればつなげはするかな?
https://www.server-world.info/query?os=CentOS_8&p=nfs&f=1
https://www.server-world.info/query?os=CentOS_8&p=nfs&f=2
つなぐところまでは余興なので端折るけどだいたいこんな感じ。


●サーバ側
まずサーバ(nfs-server)にnfs-serverデーモンを上げる
dnf install nfs-utils
systemctl start nfs-server.service
systemctl enable nfs-server.service
systemctl status nfs-server.service


・これは必要かどうかわからない
vim /etc/idmapd.conf
Domain = nfs-server


・エクスポートするサーバディレクトリと、マウント先のIPアドレスを指定
vim /etc/exports
/mnt/server-export 10.0.0.2/32(rw,no_root_squash)

no_root_squashはセキュリティ的にまずいと言う話もあるが、UIDの整合性をわざわざ取ると面倒臭いのでこれでいいじゃんと思う。そこまで気にするのしんどいでしょ。セキュリティを高めたい人は気にするといいと思う。

mkdir /mnt/server-export
chmod 777 /mnt/server-export
systemctl restart nfs-server


・ファイアウォールを開ける
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="10.0.0.2" service name="nfs" accept"
 
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="10.0.0.2" service name="rpc-bind" accept" 

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="10.0.0.2" service name="mountd" accept"

firewall-cmd --reload


●クライアント側
dnf install nfs-utils


・見えるかどうかまずは確かめる
showmount --exports nfs-server
Export list for nfs-server:/mnt/server-export 10.0.0.1/32


・nfsをマウントする
mount -t nfs nfs-server:/mnt/server-export /home/myaccount/mnt


ここで/home/myaccount/mntにファイルが入っていた場合、一時的に見えなくなってしまう。そして/mnt/server-exportにすでにファイルがあった場合それが見えるようになる。

umount /home/myaccount/mntすると一時的に見えなくなっていたファイルが復活して見えるようになる。

見えなくなるけど消えはしないという仕様らしい。まぁ適切な仕様だな。
なので/mnt/server-export に /home/myaccount/mntの中身をぶち込みたい場合は、
/home/myaccount/mnt のフォルダをリネームして/home/myaccount/mnt を再度作ってからNFSマウントして、それからファイルをコピーしてマウントポイントに入れてあげないと移行できないと思う。

良きに計らって移行してくれたりはしないので、自分でやらないといけないみたい。

コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0