device is busy

简介:

device is busy

关于umount的这个问题

环境

CentOS release 6.6 (Final)
Linux tjtx135-2-90.58os.org 2.6.32-504.23.4.el6.x86_64 #1 SMP Tue Jun 9 20:57:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

关于这个问题,网上也有很多类似的问题,解决方案大致如下:

问题:
umount: /data: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
  • 方案一、losf
lsof /data 
如果发现有被打开的文件,就手动删掉相关进程
  • 方案二、fuser
fuser /data

大致的方案也是一样,就是找到使用相关分区的进程,找到后删掉即可

没错,大部分device is busy的问题,通过以上两种方案就基本可以解决。
当然,这里介绍的是一种特殊的问题,当然通过以上方法肯定是解决不了的咯。

问题和故障

umount: /data: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

解决思路:

  1. lsof /data 无解
  2. fuser /data 无解

继续查看相关信息

shell> mount
/dev/sda1 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sdb1 on /data type xfs (rw,noatime,nodiratime,osyncisdsync,inode64)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

shell> df -hT

Filesystem     Type   Size  Used Avail Use% Mounted on
/dev/sda1      ext4    99G  2.2G   92G   3% /
tmpfs          tmpfs   63G     0   63G   0% /dev/shm
/dev/sdb1      xfs     28T  6.3T   22T  23% /data

shell> ll /data

drwxr-xr-x 6 root root 142 Feb  6 16:35 FULL_BACKUP
drwxr-xr-x 4 root root  67 Feb  6 16:46 tmp

shell> ll /

lrwxrwxrwx    1 root root    10 Feb  6 16:12 tmp -> /data/tmp/

突然发现,有一个软连接指向了/data/tmp

这个突破口找到后,立马测试,将软连接去掉后,是否就可以umount了呢?

经过测试,还是会报同样的错误。

既然/tmp --> /data/tmp , 然而/data/tmp没有被打开的文件,那么看看/tmp有没有?

shell> lsof | grep /tmp
atopacctd 2974 root  cwd       DIR               8,17       55        195 /data/tmp
sshd      4634 root    7u     unix 0xffff88204f2cc200      0t0      25300 /tmp/ssh-BxMiDQ4634/agent.4634

然后将这两个进程删掉,问题解决。。。

总结

以后解决这类问题,首先看那个目录忙,就去lsof
其次,如果还么有解决问题,可以看看这个目录是否有软链接和硬链接

目录
相关文章
|
2月前
|
Go 开发工具 iOS开发
Changing an HDLM device name
Changing an HDLM device name
36 0
|
安全
解决:efi usb device has been blocked by the current security policy
解决:efi usb device has been blocked by the current security policy 问题描述:U盘装系统或者其他操作时,是因为BIOS安全策略,出现上述错误无法进入后续步骤。 解决方法:按F2(Fn+F2)进入BIOS,在secure Boot 中security选择disable。解决! 延伸(可不读): 黑苹
10958 0
|
C语言
解决Dev-C++ [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode
Dev-C++ [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode
591 0
解决Dev-C++ [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode
|
Linux
Linux Buffer I/O error on device dm-4, logical block
Linux服务器日志(Oracle Linux Server release 5.7)里面出现了一些"Buffer I/O error on device dm-4, logical block 0"之类的错误,如下所示: Jul 3 02:33:24 localhost kernel: Buf...
7617 0
|
JavaScript Linux 前端开发