首页 > 代码库 > 用fuser或者lsof解决无法umount问题(device is busy)
用fuser或者lsof解决无法umount问题(device is busy)
umount卸载磁盘时,如果有进程在使用该盘,则卸载不成功,报错如下:
# umount /data umount: /data:目标忙。 (有些情况下通过 lsof(8) 或 fuser(1) 可以 找到有关使用该设备的进程的有用信息)
一、命令介绍
1.fuser
用法 :fuser [-umv] [-k [i] [-signal] ] file/dir
-u:除了进程的PID外 ,同时列出该进程的所有者。
-m:后接的文件名会主动上调到文件系统的所顶层,对umount不成功很有效。
-v:列出每个文件与程序还有命令的完整相关性。
-k:找出使用文件/目录的pid,并试图一sigkill这个信号给予该pid.
-i:与,-k合用,kill前询问用户意愿。
-signal:1,15,9
可用于在无法umount文件时,查看pid,并杀死进程见下面的例子
# fuser /var/www/html/centos/ /var/www/html/centos/: 9807c # ps -aux|grep 9807 Warning: bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.8/FAQ root 9807 0.0 0.0 108428 2000 pts/2 Ss+ 14:52 0:00 -bash root 10003 0.0 0.0 103240 896 pts/3 S+ 15:05 0:00 grep 9807 [root@sf ~]# kill -9 9807 [root@sf ~]# umount /var/www/html/centos/
2.lsof
用法:lsof [-aUu] [+d], 一个奇怪的命令,
-u:后接username;
+d:后接目录,找出某个目录下面已经被打开的文件。
# lsof +d /data COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 99174 root cwd DIR 8,17 4096 2 /data # ps aux |grep 99174 root 99174 0.0 0.0 116756 3456 pts/0 Ss+ 09:29 0:00 -bash root 100513 0.0 0.0 112664 968 pts/5 S+ 16:47 0:00 grep --color=auto 99174 #kill -9 99174 #umount /data
用fuser或者lsof解决无法umount问题(device is busy)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。