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

linux下umount时出现错误:

[root@localhost ~]# 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、假设无法卸载的设备为 /home,运行下列命令即可:

[root@localhost ~]# fuser -m -v /home/     #普通用户加上sudo
                     USER        PID ACCESS COMMAND
/home/:              idc-mb    51643 F.c.. gnome-session
                     idc-mb    51775 F.... gnome-settings-
                     idc-mb    51795 F.c.. metacity
                     idc-mb    51804 F...m pulseaudio
                     idc-mb    51805 F.c.. gnome-panel
                     idc-mb    51810 F.c.. nautilus
                     idc-mb    51835 F.c.. polkit-gnome-au

# -m 参数显示所有使用指定文件系统的进程,后面可以跟挂载点,或是dev设备
# -v 参数给出详细的输出,可以看出,原来是 gqview 这个程序还在霸占着移动设备
# fuser 还给出了程序的进程号,知道了进程号,你就可以随便怎么处置这个程序了

-------------------------------------------------------------------------------------------------
# 另外你也可以添加一个 -k 参数:
[root@localhost ~]# fuser -m -k /home/         # 这招自动把霸占着/home的程序杀死
/home/:              51643c 51775 51795c 51804m 51805c 51810c 51835c

# unmount /home     #进程kill之后即可umount

$ sudo fuser -m -k /media/matlab/    #将/media/matlab/ 的程序杀死
$ sudo umount /media/matlab

# 如果你不是很明确是否要杀死所有霸占设备的程序,你还可以加一个 -i 参数,这样每杀死一个程序前,都会询问:
$ sudo fuser -m -v -i -k /media/matlab/
                          用户     进程号      权限   命令
/media/matlab/:         galeki      371     ..c..   gqview
杀死进程 371 ? (y/N)
$ sudo umount /media/matlab

顺利的解决了 “Device is busy” 的问题




      本文转自ling118 51CTO博客,原文链接:http://blog.51cto.com/meiling/2068959,如需转载请自行联系原作者



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值