本篇文章为大家展示了Linux系统下无法卸载挂载的解决办法是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
我们在日常运维中经常性会遇到需要进行磁盘的扩容、卸载、挂载等操作,但是有时候这个系统上跑的应用并没有停止或者有其他的运维同事在操作这个目录,这个时候我们是无法直接umount卸载掉的,所以今天就给大家分享一下如果遇到这种问题了,我们如何去合理的处理?
现象描述:这里我们需要将/mnt目录卸载掉,如下图所示:
执行卸载命令:umount /mnt后,发现卸载不了,提示资源被占用,如下图所示:
上面我们已经看到了,提示被占用,无法卸载,如何处理呢?方法很简单,可以使用强制卸载,命令如下:
[root@docker /]# umount -f /mntumount2: Device or resource busyumount: /mnt: device is busyumount2: Device or resource busyumount: /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 命令进行查看。
上述内容就是Linux系统下无法卸载挂载的解决办法是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。