解決在Linux 上umount 掛載的優盤或者移動硬碟時出

tags:    時間:2013-12-26 01:37:45
解決在Linux 下umount 掛載的優盤或者移動硬碟時出
解決在Linux 下umount 掛載的優盤或者移動硬碟時出現的「Device is busy」
 
在 Linux 下 umount 掛載的優盤或者移動硬碟的時候,經常會出現 「Device is busy」 的提示,哦~真讓人惱火,在 Windows 下的那個無法卸載移動設備的問題,竟然也竄到了 Linux 下 ……

其實,錯誤不在 WIndows 也不在 Linux,無法卸載移動設備的原因,是因為系統中還有程序在霸佔著移動設備上的文件,如果冒然強制卸載,可能會導致數據丟失和設備損壞,「Device is busy」 是一種保護措施。

既然知道是有程序霸佔,找出這個程序再處理一下就好了。 fuser 這個小程序可以派上用場,基本上每個發行版都會帶有 fuser 這個工具。

fuser 可以顯示出當前哪個程序在使用磁碟上的某個文件、掛載點、甚至網路埠,並給出程序進程的詳細信息。

假設無法卸載的設備為 /media/USB,運行下列命令即可:
CODE:
# fuser -m -v /media/USB/
用戶 進程號 許可權 命令
/media/BAK/: galeki 335 ..c.. gqview

-m 參數表明指定的路徑是一個掛載點,-v 參數給出詳細的輸出,可以看出,原來是 gqview 這個程序還在霸佔著移動設備,fuser 還給出了程序的進程號,知道了進程號,你就可以隨便怎麼處置這個程序了。

另外你也可以添加一個 -k 參數:

fuser -m -k /media/USB/

這招自動把霸佔著 /media/USB/ 的程序殺死。如果你不是很明確是否要殺死所有霸佔設備的程序,你還可以加一個 -i 參數,這樣每殺死一個程序前,都會詢問:
CODE:
# fuser -m -v -i -k /media/BAK/
用戶 進程號 許可權 命令
/media/BAK/: galeki 371 ..c.. gqview
殺死進程 371 ? (y/N)

很順利的解決了 「Device is busy」 的問題。

推薦閱讀文章

Bookmark the permalink ,來源:互聯網