用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
[[email protected] ~]# kill -9 9807
[[email protected] ~]# 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
时间: 2024-10-03 13:38:40

用fuser或者lsof解决无法umount问题(device is busy)的相关文章

Linux umount的device is busy问题

现象: [[email protected] ~]# df -h文件系统 容量 已用 可用 已用%% 挂载点/dev/vda1 9.9G 3.9G 5.6G 41% /tmpfs 3.9G 100K 3.9G 1% /dev/shm/dev/sr0 368K 368K 0 100% /media/CDROM/dev/vdb 197G 5.9G 181G 4% /mnt [[email protected] /]# umount /dev/vdbumount: /mnt: device is bu

umount: /home: device is busy

转自:umount: /home: device is busy 取消挂载/home时出现umount: /home: device is busy,原因是因为有程序在使用/home目录,我们可以使用fuser查看那些程序的进程,然后杀掉就可以了.[[email protected] home]# fuser -m /home/home: 10278c 10279c 10280c 10281c 10282c 10295 10365 18222c 命令:kill -9 pid 另: umount

umount 提示 device is busy

]# umount /data umount: /data: device is busy. 强制卸载 ]# umount /data -f 查看占用进程 ]# fuser -m /data df 再检查检查是不是早就已经卸载掉了.... 原文地址:http://blog.51cto.com/xiaoahehe/2350622

Linux umount设备时出现device is busy解决方法

在Linux中,有时使用umount命令去卸载LV或文件时,可能出现umount: xxx: device is busy的情况,如下案例所示 [[email protected] u06]# vgdisplay -v VolGroup03     Using volume group(s) on command line     Finding volume group "VolGroup03"   --- Volume group ---   VG Name            

umount 时出现的 "Device is busy"问题

linux下umount时出现错误: [[email protected] ~]# umount /home/ umount: /home: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) 解决方法:1.可以显示出当前哪个程序在使用磁盘上的某个文件.挂载点.甚至网络端口,并给出程序进程的详细信息.2.假设无法卸载的设备为

umount 时出现的 “Device is busy”

参考链接:http://www.jb51.net/os/RedHat/1051.html umount /home umount: /home: device is busy.   #显示磁盘忙碌 (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) fuser -m -v /home   #查看那个进程在使用硬盘 USER        PID ACCESS

fuser 和 lsof

FUSER fuser功能fuser 可以显示出当前哪个程序在使用磁盘上的某个文件.挂载点.甚至网络端口,并给出程序进程的详细信息. fuser显示使用指定文件或者文件系统的进程ID.默认情况下每个文件名后面跟一个字母表示访问类型. 访问类型如下: c 代表当前目录 e 将此文件作为程序的可执行对象使用 f 打开的文件.默认不显示. F 打开的文件,用于写操作.默认不显示. r 根目录. m 映射文件或者共享库. s 将此文件作为共享库(或其他可装载对象)使用当指定的文件没有被访问,或者出现错误

umount报错解决device is busy

umount –a   报错device is busy如图 df    -h 执行 umount -l /dev/sdk1 fuser -m -v /cache10 再查看卸载了

linux查文件被哪些程序占用—fuser和lsof的使用

fuser 用途:使用文件或文件结构识别进程,即:查询都有哪些进程占用了制定的文件.目录.设备或套接字; lsof MTR fuser命令 用途:使用文件或文件结构识别进程,即:查询都有哪些进程占用了制定的文件.目录.设备或套接字;语法:fuser [-c|-d|-f] [-k] [-u] [-x] [-V] 文件/目录/套接字/设备 ...说明:fuser命令列出了本地进程的进程号,那些本地进程使用File参数指定的本地或远程文件.对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程.每个