編集メニュー > 新規作成 編集 コピー 名前の変更 アップロード 添付ファイル一覧 バックアップ

*NFS [#w260b8a7]
少しはまったのでメモ。

まずNFSで公開するディレクトリの設定。/etc/exportsをこんな風に書く

 # added 2012/04/17
 /data/d01 192.168.1.0/255.255.255.0(ro)

最後のカッコの前にスペースを入れてはダメ。
そのあと
 /etc/init.d/nfs start
 >chkconfig nfs on
。
 >exportfs -v
 /data/d01     192.168.1.0/255.255.255.0(ro,wdelay,root_squash,no_subtree_check)
で確認できる。
あと/etc/idmapd.confにのDomainを書いておく必要があるかもしれない。
でもこれでクライアントPCからマウントしようとしてもダメ。
 >mount -t nfs hostname:/data/d01 temp
 mount.nfs: mount to NFS server 'hostname' failed: System Error: No route to host
サーバー側でiptablesをstopするとマウントできるのでこれのせい。(hostnameは読み替えて)

nfsで使用するポートは以下があるらしい
- 111 portmapper
- 2049 nfs
これは固定。ほかは動的らしいが、/etc/sysconfig/nfsで固定にできる。以下の部分のコメントを外す。
- RQUOTAD_PORT=875
- LOCKD_TCPPORT=32803
- LOCKD_UDPPORT=32769
- MOUNTD_PORT=892
- STATD_PORT=662

そののちに/etc/sysconfig/iptablesに以下を追加。
ちなみにiptablesのsport、dportは送り元(source)と送り先(destination)。

- --dportは、そのホスト(例えばWEBサーバ)に対するポートへの接続の許可。80の場合、これがなければ、外部のクライアントの80番ポートへのパケットがサーバに届きません。
(たとえWEBサーバが起動していても届かない。)

- 次に、--sportは自分のWEBサーバの動作とは関係なく、そのホスト(自分のサーバの事です)が外部のWEBサーバに接続した時にその外部のWEBサーバから帰ってくるパケットを許可する設定です。つまりこれがなければ自分のサーバ上でWEBブラウジングが出来なくなる。

結局以下を追加しました。
 # for NFS added 2012/04/18 -->                                                                                                                                                                
 -A INPUT -s 192.168.1.0/24 -p tcp --dport 111 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 111 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p tcp --dport 662 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 662 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p tcp --dport 875 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 875 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p tcp --dport 892 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 892 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p tcp --dport 2049 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 2049 -j ACCEPT
 -A INPUT -s 192.168.1.0/24 -p udp --dport 32769 -j ACCEPT
 #<--        

こいつらは
 -A INPUT -j REJECT --reject-with icmp-host-prohibited
の前に追加しないとだめです。

の前に追加しないとだめです。これでマウントできました。あとはクライアント側の設定。
マウントポイントを適当につくってfstabに以下を追加。
 servername:/data/d01           /data                   nfs     defaults,ro     0 0
これで
 > mount /data
とすればOK。