Linux系統下無法解除安裝掛載的解決辦法

大雄45發表於2021-01-14
導讀 我們在日常運維中經常性會遇到需要進行磁碟的擴容、解除安裝、掛載等操作,但是有時候這個系統上跑的應用並沒有停止或者有其他的運維同事在操作這個目錄,這個時候我們是無法直接umount解除安裝掉的,所以今天就給大家分享一下如果遇到這種問題了,我們如何去合理的處理?

Linux系統下無法解除安裝掛載的解決辦法Linux系統下無法解除安裝掛載的解決辦法

現象描述:這裡我們需要將/mnt目錄解除安裝掉,如下圖所示:

Linux系統下無法解除安裝掛載的解決辦法Linux系統下無法解除安裝掛載的解決辦法

執行解除安裝 :umount /mnt後,發現解除安裝不了,提示資源被佔用,如下圖所示:

Linux系統下無法解除安裝掛載的解決辦法Linux系統下無法解除安裝掛載的解決辦法

上面我們已經看到了,提示被佔用,無法解除安裝,如何處理呢?方法很簡單,可以使用強制解除安裝, 如下:

[root@docker /]# umount -f /mnt
umount2: Device or resource busy
umount: /mnt: device is busy
umount2: Device or resource busy
umount: /mnt: device is busy

-f引數為進行強制解除安裝,這裡我們也發現了,上面使用的強制解除安裝並未生效,還是報錯了,怎麼辦呢?不要著急,看下面!

使用fuser命令,先確認有哪些程式在佔用該目錄

[root@docker /]# fuser -cu /mnt
 /mnt: 1112c(java)

上面檢視發現是pid為1112的java程式目前在佔用這此目錄,所以無法解除安裝。

那麼我們確認了是哪個程式佔用著此目錄後,我們可以kill 掉該程式,

這裡有兩種方法去kill程式:

第一種就是我們平常用到的直接命令:kill -9 1120;

第二種就是使用fuser -ck /mnt

[root@docker /]# fuser -ck /mnt
/mnt: 1120c

當我們需要知道哪個目錄被哪個程式所佔用的時候,也可以使用lsof 命令進行檢視。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2749836/,如需轉載,請註明出處,否則將追究法律責任。

相關文章