NFSでネットワーク越しにハードディスクをマウントしてみたメモ。
Fedora (サーバー) の /dir/path を、Arch Linux (クライアント) の /mount/path にマウントする感じ。
サーバー側の設定
サーバー側のPC、Fedoraでの設定。まずはNFSをインストール。
[fedora]sudo yum install nfs-utils
/etc/exports を編集してマウントする場所と範囲を設定する。括弧内でオプションを指定する。
/dir/path 192.168.1.0/24(rw)
サービスを起動する。RPCってのを使うらしい。
[fedora]sudo systemctl start rpcbind.service
[fedora]sudo systemctl enable nfs-server.service
[fedora]sudo systemctl start nfs-server.service
クライアント側の設定
で次はクライアント側、Arch LinuxなPCを設定。といっても特にすることはないけど、マウントするときにNFSがないといかんので、インストールする。
[arch]sudo pacman -S nfs-utils
マウント & ファイアウォール設定
ためしにクライアントでマウントしてみる。
[arch]sudo mount -t nfs fedora:/dir/path /mount/path
がエラー。とりあえずサーバー側のiptablesをオフったら動いた。ファイアウォールでブロックされるらしい。
[fedora]sudo systemctl stop iptables.service
ということでファイアウォールを通す設定。デフォルトだとポートが定まってないらしいので、/etc/sysconfig/nfs を編集してポートを固定する。コメントでかかれた2つのポート設定をコメント解除。
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
/etc/sysconfig/iptables を編集して、 rpc, nfs, mountd と上のポートを許可。
-A INPUT -m state --state NEW -s 192.168.1.0/24 -m tcp -p tcp -m multiport --dports 111,2049,32803 -j ACCEPT
-A INPUT -m state --state NEW -s 192.168.1.0/24 -m udp -p udp -m multiport --dports 111,2049,20048,32769 -j ACCEPT
止めてた iptables を起動。
[fedora]sudo systemctl start iptables.service
で、もういちどクライアントからマウント。無事マウントできるはず。
[arch]sudo mount -t nfs fedora:/dir/path /mount/path
最初 iptables うまく通らんなあと思ったら REJECT の下に書いてた…。以下コマンドでチェックするっぽいけど too weak とか言われるネットワーク!
[arch]sudo showmount -e fedora
[arch]sudo rpcinfo -p fedora