質問

Linux マシン上の NFS マウントされたディレクトリがハングしました。強制的にアンマウントしようとしましたが、うまくいかないようです。

$ umount -f /mnt/data
$ umount2: Device or resource busy
$ umount: /mnt/data: device is busy

「」と入力するとmount"、ディレクトリはもうマウントされていないようですが、マウントするとハングします"ls /mnt/data" そしてマウントポイントを削除しようとすると、次のメッセージが表示されます。

$ rmdir /mnt/data
rmdir: /mnt/data: Device or resource busy

マシンを再起動する以外に何かできることはありますか?

役に立ちましたか?

解決

遅延アンマウントを試してみるとよいでしょう。

umount -l

他のヒント

NFS サーバーが失われ、オンラインに戻すことができない場合、私が使用する 1 つの方法は、NFS サーバーの IP (この例では 192.0.2.55) を持つインターフェースにエイリアスを追加することです。

Linux

そのためのコマンドは大まかに次のようなものです。

ifconfig eth0:fakenfs 192.0.2.55 netmask 255.255.255.255

ここで、192.0.2.55 は、なくなった NFS サーバーの IP です。これで、アドレスに ping を送信できるようになり、ファイル システムをアンマウントできるようになります (unmount -f を使用します)。次に、エイリアス化されたインターフェイスを破棄して、古い NFS サーバーへのトラフィックが自分自身にルーティングされないようにする必要があります。

ifconfig eth0:fakenfs down

FreeBSD および類似のオペレーティング システム

コマンドは次のようになります。

ifconfig em0 alias 192.0.2.55 netmask 255.255.255.255

そしてそれを削除するには:

ifconfig em0 delete 192.0.2.55

詳細については、man ifconfig(8) を参照してください。

走ってみる

lsof | grep /mnt/data

これにより、アンマウントを妨げる /mnt/data にアクセスしているプロセスがリストされるはずです。

私は同じ問題を抱えていましたが、どちらもありませんでした umount /path -f、 どちらでもない umount.nfs /path -f、 どちらでもない fuser -km /path、作品

ついに簡単な解決策を見つけました >.<

sudo /etc/init.d/nfs-common restart, 、それでは簡単なことをやってみましょう umount ;-)

NFS サーバーが消えました。

理想的には、NFS サーバーが復旧することが最善の策です。

そうでない場合は、「umount -f」でうまくいくはずです。常にうまくいくわけではありませんが、うまくいくこともよくあります。

どのプロセスがNFSファイルシステムを使用しているかを知っている場合、それらのプロセスを殺すことを試みることができます。

最後に、再起動する必要があると思います。

また、NFS ドライブをソフトマウントしないでください。ハードマウントを使用して、彼らが働いたことを保証します。書き込みを行う場合はこれが必要です。

ここでは有効な答えが見つかりませんでした。ただし、Linux では「umount.nfs4 /volume -f」を実行すると、確実にアンマウントされます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top