
次のようなシナリオがあります:
/usr/share/man をエクスポートとして持つ 2 つの NFS サーバー (例、何でも構いません)、サーバー A とサーバー B があるとします (レプリカではなく、同じサブネット上で同じものを共有する 2 つの独立したサーバー)
両方のNFSサーバーが稼働しており正常です
ユーザーは、ls /mnt/usr/man (例) を実行してクライアントからマウントを開始します。auto.master のタイムアウトは 2 分、fstype=nfs、options=ro,soft です。
自動マウントが成功し、サーバAがautofsによって選択され、ユーザーはリストされたマニュアルページを見ることができる。
1分10秒後にサーバ(NFS)Aがダウン
1分20秒でユーザーは再びls /mnt/usr/manを実行する
何が起こっているかというと、ロックされているということです。マウントはサーバー A に留まり、ユーザーは /mnt/usr/man にアクセスできません (lsof も動作していません)。
数分(約10分)待った後
ls: cannot open directory /mnt/usr/man: Input/output error
私の質問は、autofs がこのシナリオを管理し、サーバー B に自動的に再マウントする必要があるかどうかです (マウント タイムアウトがまだ終了していない場合でも)。
多くの記事を読みましたが、私のシナリオは「autofs」の役割ではないようです (このようなことを望むなら、別の方法で行う必要があります)。
しかし、autofs がこの状況を自ら処理すべきかどうかを 100% 確信したいのです。
答え1
かなり遅くなりましたが、nfs-server サービスはサーバー B で開始されましたか? まさにこれらの症状に遭遇しましたが、それが解決策でした。service nfs-server start
サーバー B で実行してみてください。