2008-09-16 20 views
119

LinuxマシンにCIFS共有をマウントしています。 CIFSサーバーが停止しているか、インターネット接続が切断されていて、CIFSマウントに触れるものがタイムアウトするまでに数分かかるため、待機中に不安定になります。私はホームディレクトリでlsを実行することさえできません。シンボリックリンクがCIFSマウント内を指し示していて、lsはその色を決定するためにそれを追跡しようとするからです。私がそれをアンマウントしようとすると(-flでさえも)、umountプロセスはlsのようにハングアップします。 sudo kill -9でもそれを殺すことはできません。カーネルを強制的にアンマウントするには?CIFS接続を強制的にアンマウントする方法

+0

:[NFSマウントされたディレクトリの強制アンマウント(http://stackoverflow.com/questions/40317/force-unmount-of-nfs-mounted-directory) – Kemal

答えて

147

の良いチュートリアルでは、私は怠惰なアンマウントを使用するがあります:umount -l(つまり、小文字Lです)

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

+23

これは最初は私にとってはうまくいかなかった。しばらくの間(新しい仮想端末で毎回)実験したところ、私はこれを思いつきました: '' 'sudo umount -a -t cifs -l'''。どちらかがトリックをしたか、最初のumountが完了するまでに(120秒〜300秒)かかりました。私はアンマウントが120秒以上ブロックされていることについて、たくさんの警告を受けました。 –

+2

そして、再びマウントできるようになる前に、吊るしたumountをすべて殺さなければなりませんでした。 –

+7

それを動作させるには 'sudo umount -a -t cifs -l'が必要でした。 – Joma

0

あなたが試すことができることをアンマウントするには-fオプションがあります:

umount -f /mnt/fileshare 

あなたはマウントする「-t CIFS」オプションを指定していますか?また、マウントするための「ハード」オプションも指定していないことを確認してください。

fusesmbファイルシステムは他のプロセスと同様にユーザースペースで実行されるため、考慮する必要があります。

+3

-fと-tは助けにならない、umountはまだハングアップします。 – smoofra

+0

'-t cifs'オプションを追加してから再起動しましたか?私はあなたの固執したマウントポイントを直すためにあなたができることは何もないと思っています。あなたの唯一の希望は、将来の失敗に対してより耐性のある方法でマウントしようとすることです。 –

1

umount -f/mnt/shareを試してください。 NFSで正常に動作し、cifsで試したことはありません。

また、autofsを見ると、アクセス時にのみ共有がマウントされ、afterworldsはマウント解除されます。

www.howtoforge.net

+4

残念なことに-fはCIFSでは動作しません。 umountはまだハングアップしています。 – smoofra

5

私は本当の解決を見つけるまで、私はその日のために、この問題を持っていました。吊り下げられたsmb共有を強制的にアンマウントしようとするのではなく、 "ソフト"オプションで共有をマウントしてください。プロセスが利用できない共有に接続しようとすると、一定時間後に試行が中止されます。

soft Make the mount soft. Fail file system calls after a number of seconds.

mount -t smbfs -o soft //[email protected]/share /users/username/smb/share 

stat /users/username/smb/share/file 
stat: /users/username/smb/share/file: stat: Operation timed out 

があなたの質問に本当の答えではないかもしれませんが、それは問題

+14

'man mount.cifs'を見ると' soft'が実際にはデフォルトであることに気付くでしょう。 – Benj

+4

また、「ソフト」オプションを指定してもハングします... – dhardy

45

umount -a -t cifs -l

を解決するのCentOS 6.3上で私にとって魅力のように働きました。それは私にサーバーの再起動を救った。

これは私の作品
+5

'-a'と' -l'スイッチは何ですか?どのように役立っていますか? – Isaac

+5

-aおよび-t cifsは、すべてのcifsファイルシステムをアンマウントします。アンマウントするファイルを指定する方が良い – dwery

+1

これは、ファイルブラウザを使用してマウントし、問題のあるマウントポイントを見つけることができない場合に完璧です。 – sage

5

(UbuntuのUbuntuの14.04 Serverへの13.10デスクトップ): -

sudo umount -f /mnt/my_share 

はserv_shareはsmb.confの中に設定し、指摘されていることを

sudo mount -t cifs -o username=me,password=mine //192.168.0.111/serv_share /mnt/my_share 

を搭載ファイル。

0

私はdavfsに非常によく似た問題がありました。 umount.davfsのmanページで、umount.davfsによって、-f -l -n -r -vのオプションが無視されることがわかりました。私のdavfsマウントを強制的にアンマウントするには、umount -i -f -l /media/davmountを使用しなければなりませんでした。RHEL 6に

8

これが働いた:RHEL 6に

umount -f -a -t cifs -l 
-1

をこれも私の仕事:

のumount -f -a -tは

0
umount -f -t cifs -l /mnt & 

は注意してください-l FOLDER_NAMEをCIFS &の場合、umountをバックグラウンドで実行します。 umountはファイルシステムを最初に切り離すので、何も見つからないでしょう/mntdfコマンドを実行すると、強制的にumount /mntになります。

-6

レイジーアンマウントがあなたのために仕事をします。

同様アンマウント-l

+7

7歳の回答が重複しています。 –

+4

'アンマウント:コマンドが見つかりませんでした。 –

関連する問題