阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux系统下无法卸载挂载的解决办法

80次阅读
没有评论

共计 795 个字符,预计需要花费 2 分钟才能阅读完成。

导读 我们在日常运维中经常性会遇到需要进行磁盘的扩容、卸载、挂载等操作,但是有时候这个系统上跑的应用并没有停止或者有其他的运维同事在操作这个目录,这个时候我们是无法直接 umount 卸载掉的,所以今天就给大家分享一下如果遇到这种问题了,我们如何去合理的处理?

Linux 系统下无法卸载挂载的解决办法

现象描述:这里我们需要将 /mnt 目录卸载掉,如下图所示:

Linux 系统下无法卸载挂载的解决办法

执行卸载命令:umount /mnt 后,发现卸载不了,提示资源被占用,如下图所示:

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 命令进行查看。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计795字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中