web-dev-qa-db-ja.com

古いnfsファイルハンドルを取得しているときに、どうすれば強制的にマウントを解除できますか?

トリッキーな状況に陥った。/mnt/1にaufsをマウントします

aufs on /mnt/1 type aufs (rw,relatime,si=daab1cec23213eea)

マウントを解除できません:

Sudo umount -f /mnt/1
umount2: Stale NFS file handle
umount: /mnt/1: Stale NFS file handle
umount2: Stale NFS file handle
umount2: Stale NFS file handle

マウントポイントをアンマウントするにはどうすればよいですか? (システムを再起動せずに)

(注:aufsはNFSではなくopenafsシステムの上にあります。)

18
UsAaR33

man 8 umountから:

   -f     Force   unmount   (in  case  of  an  unreachable  NFS  system).
          (Requires kernel 2.1.116 or later.)

   -l     Lazy unmount. Detach the filesystem from the filesystem hierar-
          chy  now,  and cleanup all references to the filesystem as soon
          as it is not busy anymore.  (Requires kernel 2.4.11 or  later.)

Sudo umount -f /mnt/1が機能しない場合は、Sudo umount -l /mnt/1をお試しください。

6
Xupeng

古いファイルハンドルにもかかわらず、これをアンマウントするには、次のようにします。

fusermount -u /mnt/1
0
TheJJ

私の問題の解決策を見つけました(質問と同じ)。これが[〜#〜] not [〜#〜]うまく機能したことです:

  • mount -t nfs -o remount /mnt/1
  • umount /mnt/1
  • umount -f /mnt/1
  • umount -l /mnt/1

これが[〜#〜] did [〜#〜]が私のために働くものです:

  • umount -lf /mnt/1

これでうまくいかない場合は、マウントされたディレクトリに現在関連付けられているすべてのプロセスを強制終了してください。

  • lsof | grep /mnt/1
  • fuser -k /mnt/1

-ll azy)オプションはumountに今すぐクリーンアップしないように指示します。このオプションがないと、マウントポイントはビジーになります。 umountオプションのmanページの詳細については、@ Xupengの回答を確認してください。

0
craymichael