NFSサーバーとしてUbuntu 12.04を使用しています。クライアントはLinuxです。私の/etc/exports
ファイルには1行ありますが、
/folderToExport *(rw,async,no_subtree_check)
/etc/init.d/nfs-kernel-server status
は、NFS共有が期待どおりに機能していることを示しています。問題は、別のLinuxホストからNFS共有をマウントしようとするたびに、stdoutが言うことです
mount.nfs: rpc.statd is not running but is required for remote locking
mount.nfs: use '-o nolock'...or start statd
ps -ef |grep statd
は、rpc.statd
がすでに実行されていることを示しています。なぜ「statdを開始する」と言うのですか?
-o nolock
の提案を含めると、NFSのマウントが可能になりますが、マウントされたNFSは読み取り専用になります。 /etc/exports
ファイルはrw
を要求します。
どのようにstatdを開始しますか? NFSクライアントまたはサーバーにいくつかの構成が欠落していますか?
ここに私のために働いたものがあります。 /etc/exports
で各共有フォルダの宣言を行います。
/folderToExport *(rw,async,no_subtree_check)
statd
は
service statd stop
の後に
service statd start
。次にps -ef |grep statd
が表示されます
statd 1994 1 0 15:23 ? 00:00:00 rpc.statd -L
statd
が実行されていることを確認したら、次にLinuxクライアントからmount
を実行します。
mount 192.168.1.3:/folderToExport /mountFolder
メッセージはもうありませんrpc.statd is not running ... start statd
最後に、NFSサーバーの権限がrw
権限を許可していることを確認してください。 (/etc/exports
ファイルを変更するだけでは不十分です)
chmod 0777 /folderToExport -R
statd
はパッケージの一部ですnfs-common
。あなたはおそらくあなた自身がlocate statd
これにより、特に/etc/init.d/statd
。
statd
は次のように開始できます。
service statd start
しかし、通常はシステムの起動時に開始されているはずですが、他に問題がある可能性があります。ログファイルを確認してください:grep statd /var/log/*
それが開始しなかった理由があるかどうかを確認します。
きみの /etc/exports
私には大丈夫そうです。私が使う:
/data0 *(rw,no_root_squash,no_subtree_check)
私のサーバー上で:
192.168.0.2:/data0 /data0 nfs defaults,noauto,user 0 0
の中に /etc/fstab
クライアントで。
私はRaspbianでうまくいく答えを見つけました here 。
Rpcbindおよびnfsサービスを有効にします。
Sudo update-rc.d rpcbind enable
Sudo update-rc.d nfs-common enable
Rpcbindサービスを再起動します
Sudo service rpcbind restart
Rpcbindとstatdが有効で実行されているにもかかわらず、このエラーメッセージが表示される場合は、ホストが制限付きのtcpラッパーで構成されている可能性があります。次のエラーがログに記録されます。
rpc.statd: Failed to read /var/lib/nfs/state: Success
その場合、以下を/etc/hosts.allowに追加する必要があります。
rpcbind: 127.0.0.1
/etc/default/nfs-common
で、NEED_STATD=yes
にyes
を挿入します。