当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪解决umount报错“Device is busy”的问题      在linux系统中,fuser命令可以显示出当前哪个程序在使用磁盘上的某个文件、mount挂载点、甚至网络端口,并给出程序进程的详细讯息。 假设无法卸载的设备为/var,运行命令: $ fuser -m -v /var .........
    ▪umount移动硬盘或光驱时报错:device is busy的解决方法      1,umout 移动硬盘 复制数据时,挂载的移动硬盘,数据复制完成后,直接取下了硬盘。 结果用df 命令查看时,挂载的移动硬盘还存在,阿门。   代码示例: [root@qs-wg-db1 ~]# df -lh Filesystem   .........
    ▪umount时报错:device is busy的原因与解决方法      在linux系统中,输入命令:  df -HT 查看到有移动硬盘挂载在/mnt/usbdisk目录下...   原因分析是上次mount之后,没有完整umount。    执行umount时,竟提示:device is busy  强行: umount /dev/sdb2 -f 提.........

[1]解决umount报错“Device is busy”的问题
    来源: 互联网  发布时间: 2013-12-24

在linux系统中,fuser命令可以显示出当前哪个程序在使用磁盘上的某个文件、mount挂载点、甚至网络端口,并给出程序进程的详细讯息。

假设无法卸载的设备为/var,运行命令:
$ fuser -m -v /var

用户进程号权限命令:
 

代码示例:

fuser-m -v /var                                                                                 

      USER       PID  ACCESS  COMMAND
/var: root       2003  F….  auditd
      root       2037 F…. syslogd
      root       2114 F…m pcscd
      root       2230 F.c.. master
      postfix    2241 F.c.. qmgr
      root       2248 F.c.. crond
      root       2568 F.c.. atd
      root       2659 ..c.. named
      postfix    4230 F.c.. pickup

参数说明:
-m 参数显示所有使用指定文件系统的进程,后面可以跟挂载点,或是dev设备;
-v参数给出详细的输出,可以看出,原来是gqview这个程序还在霸占着移动设备,fuser还给出了程序的进程号。

获知进程号,便可以自由处置这个程序了。

此命令可以添加一个-k参数:
fuser -m -k /var

自动杀死占用/var的程序。
如果需要杀死进程前确认的话,还可以加一个-i参数:
$ fuser -m -v -i -k /var
用户进程号权限命令
/var: galeki 2659 ..c.. named

杀死进程2659 ? (y/N)

通过fuser命令,完成进程的查找,继续停掉相关进程,然后umount,便不会出现Device is busy的提示了。


    
[2]umount移动硬盘或光驱时报错:device is busy的解决方法
    来源: 互联网  发布时间: 2013-12-24

1,umout 移动硬盘
复制数据时,挂载的移动硬盘,数据复制完成后,直接取下了硬盘。
结果用df 命令查看时,挂载的移动硬盘还存在,阿门。
 

代码示例:
[root@qs-wg-db1 ~]# df -lh
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb3             125G  3.3G  115G   3% /
/dev/sdb1              99M   12M   82M  13% /boot
tmpfs                 3.9G     0  3.9G   0% /dev/shm
/dev/sda1             275G   72G  189G  28% /u01
/dev/sdc1              10G  2.0G  8.1G  20% /datatmp
/dev/sdc1即刚才挂载的移动硬盘设备。
 

 
这时使用umount 命令,会提示设备忙(device is busy),无法挂载。
 
解决方法:
 

代码示例:
[root@qs-wg-db1 ~]# fuser -km /datatmp
[root@qs-wg-db1 ~]# df -lh
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb3             125G  3.3G  115G   3% /
/dev/sdb1              99M   12M   82M  13% /boot
tmpfs                 3.9G     0  3.9G   0% /dev/shm
/dev/sda1             275G   72G  189G  28% /u01
/dev/sdc1              10G  2.0G  8.1G  20% /datatmp
[root@qs-wg-db1 ~]# umount /datatmp
[root@qs-wg-db1 ~]# df -lh
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb3             125G  3.3G  115G   3% /
/dev/sdb1              99M   12M   82M  13% /boot
tmpfs                 3.9G     0  3.9G   0% /dev/shm
/dev/sda1             275G   72G  189G  28% /u01
 

这次umount成功了。
 
二,umount 光驱
图方便,直接将/dev/cdrom mount 到了/mnt目录。
结果收工时去拿盘,光驱弹不出来。
尝试把cdrom umout掉,结果提示:device is busy。
 
处理方法:
 

代码示例:
[root@qs-wg-db1 ~]#fuser –km /dev/cdrom
[root@qs-wg-db1 ~]#eject  -- 弹出光驱
 

以下为正确挂载CD-ROM的方法:
 

代码示例:
# mkdir cdrom
# mount /dev/cdrom /mnt/cdrom
或者
# mount /dev/cdrom /media/cdrom
 

直接挂载在/mnt,/media等系统目录下,在umount时会出现出错信息“umount: /mnt/cdrom: device is busy”的情况。
 
如果一个文件系统处于“busy”状态时,不能卸载该文件系统。

以下情况将导致文件系统处于“busy”状态:
1,文件系统上面有打开的文件
2,某个进程的工作目录在此文件系统上
3,文件系统上面的缓存文件正在被使用


    
[3]umount时报错:device is busy的原因与解决方法
    来源: 互联网  发布时间: 2013-12-24

在linux系统中,输入命令:
 df -HT
查看到有移动硬盘挂载在/mnt/usbdisk目录下...
 
原因分析是上次mount之后,没有完整umount。 
 
执行umount时,竟提示:device is busy 
强行: umount /dev/sdb2 -f
提示:umount2: 设备或资源忙
umount: /mnt/usbdisk: device is busy
 
好吧,查询下使用情况: fuser -m /mnt/usbdisk   
有 6406 进程在使用..
ps aux | grep 6406
再kill
 
接着umount 提示还是失败...
接着 fuser -k /mnt/usbdisk
提示:
/mnt/usbdisk/:        6406c
No automatic removal. Please use  umount /mnt/usbdisk
按提示操作: umount /mnt/usbdisk  OK    搞定!

整个解决问题的过程,还算是顺畅,不过device is busy的问题,有时原因会有多种,建议大家在处理这类问题时,理清思路,逐个击破哦。


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3