プライマリNFSサーバーがオフラインになると、共有をマウントするすべてのクライアントは次の影響を受けます。
1. `df` does not work (times out)
2. `lsof` does not work (times out)
3. I cannot unmount the share (umount times out)
4. I cannot restart the client PC, the shutdown process gets stuck
while trying to umount the dead NFS share:
`nfs server not responding still trying`
5. hard reboot (reset) works, but while booting the client PC gets
stuck while trying to mount the NFS share
これでこの問題を解決する方法がわかりました。 5.項目をfstab
に変更できますnoauto
。しかし、他の問題はどうですか?クライアントには、NFS
死んだNFSサーバーへの待機を停止できるインテリジェンスはありませんか?なぜ無限待つのですか?何が起こってもx
数秒後に彼が試みを放棄するようにどこかにタイムアウトを設定できますか?
ベストアンサー1
はい、これはNFSの特性です。クライアントは、NFS リソースが返されるまで無期限に待機します。信じられないかもしれない、またはこのように動作するように設計されています!
自動マウント
autofs
より良いアプローチは、NFS共有を無期限にマウントするのではなく、必要に応じて自動的にマウントするツールなどを使用することです。
NFSのみを使用
@Patrickがコメントで指摘したように、soft
NFS共有をマウントするときにこのオプションを使用すると、この動作を減らすことができます。
ソースの抜粋:http://www.tldp.org/HOWTO/NFS-HOWTO/client.html
柔らかい
ファイル要求が失敗すると、NFSクライアントはファイルアクセスを要求したクライアントコンピュータのプロセスにエラーを報告します。一部のプログラムはこの問題を穏やかに扱うことができますが、ほとんどはそうではありません。この設定はファイルの破損やデータの損失の原因となるため、使用しないことをお勧めします。メールを大切にしている場合は、特にメールディスクには使用しないでください。
硬い
サーバーがクラッシュすると、NFS マウント・ファイル・システム上のファイルにアクセスするプログラムが中断されます。 intrも指定しないと、プロセスを中断または終了することはできません(「肯定的な終了」を除く)。 NFSサーバーが再びオンラインになると、プログラムは中断することなく元の場所で実行され続けます。すべてのNFSマウントファイルシステムでは、hard、intrを使用することをお勧めします。
/etc/fstab
あなたのファイルに
# device mountpoint fs-type options dump fsckord
...
master.foo.com:/home /mnt/home nfs rw,soft 0 0
...