linuxumount命令介绍与deviceisbusy解决方法

语法:umount  参数  挂载点/设备名

参数:

-a   卸除/etc/mtab中记录的所有文件系统。
-h   显示帮助。
-n   卸除时不要将信息存入/etc/mtab文件中。
-r   若无法成功卸除,则尝试以只读的方式重新挂入文件系统。
-t<文件系统类型>   仅卸除选项中所指定的文件系统。
-v   执行时显示详细的信息。
-V   显示版本信息。
其他参数请通过man umount查看。

实例:

比如我的U盘在系统中显示为/dev/sdb1,我在/新建usb目录用于挂载U盘内容。

#mount /dev/sdb1  /usb

想卸载时

#umount  /dev/sdb1或

#umount /usb都可以。

不过对于u盘一般使用eject命令卸载

#eject /dev/sdb1或

#eject /usb

但是经常会出现umount: /usb: device is busy的情况

设备正忙,说明我们还在使用这个设备,一般情况下是我们正在设备的挂载点上,如/usb,此时cd其他路径再umount就可以了。不过有时这样做还是不可以,说明还有其他进程正在使用这个设备。此时我们应该怎么查找这个进程呢?

对于这种情况,我们一般使用“lazy” umount来解决。使用很简单,umount加上-l参数即可,lazy umount会断开设备并关闭打开该设备的全部句柄。如果还是不行,咋办呢。那就只能查找使用此设备的进程啦。

第一个我想到的是使用lsof命令,lsof命令可以列举系统中被 打开的文件。

lsof命令详见:http://bbs.51osos.com/thread-456-1-1.html

http://bbs.51osos.com/thread-3624-1-1.html

#losf | grep usb

把找到的进程kill掉就OK啦。

第二个想到是fuser命令。

#fuser -m /usb

如显示:2362c

把2362这个pid kill掉就OK啦。后面的字母含义如下:

  • c: current directory.

  • e: executable being run.

  • f: open file. f is omitted in default display mode.

  • F: open file for writing. F is omitted in default display mode.

  • r: root directory.

  • m: mmap’ed file or shared library.

也可以这样操作:

fuser -m -v -i -k  /usb 使用i参数会问你是否kill掉这个某个进程,按y就把它kill了。

fuser命令详见:http://bbs.51osos.com/thread-4185-1-1.html

不过使用ps -ef 或ps aux与grep应该也可以找到的,如果您有更好的方法欢迎在评论中与大家分享。

51开源社区GoFace原创,转载请注明本声明与本文链接http://blog.51osos.com/linux/linux-umount-device-is-busy/

更多相关文章
  • kvm虚拟机不能使用virshshutdownw命令关闭虚拟机的解决方法
    今天笔者在对kvm虚拟机进行管理时,使用virsh shutdown命令关闭指定的虚拟机时,发现虽然有如下的提示,但其实虚拟机却一直不会真正的关闭. 经过查看virsh命令帮助和上网查询,才得知virsh shutdown命令使用发送acpi指令来控制虚拟机的电源, 而kvm虚拟机安装linux系统 ...
  • 安装LR11 时,安装Microsoft Visual c++2005 sp1运行时组件,就会提示命令行选项语法错误,键入"命令/?"可获取帮肋信息1.进入loadrunner-11\Additional Components\IDE Add-Ins\MS Visual Stud ...
  • 在cygwin下运行ls等linux常见命令时出现“command not found”的提示,原因是环境变量没有配置好,因此只要将环境变量配置正确,即可正常使用.举例说明,cygwin安装在C盘根目录下,那么在环境变量编辑界面(右键我的电脑--属性--高级--环境变量)的系统变量中添加名为“CYG ...
  • mysql主从数据库不同步的3种解决方法今天发现Mysql的主从数据库没有同步 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master status; 也正常. mysql> show master sta ...
  • 今天发现Mysql的主从数据库没有同步 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master status; 也正常. mysql> show master status; +-------------- ...
  • 本文将为大家讲解SQL Server置疑数据库的解决方法,数据库被标为置疑有时是很偶然的,下面将为大家介绍几个解决方法. 1.首先确认已经备份了.mdf和.ldf文件. 2. 在SQL Server中新建一个同名的数据库,然后停止SQL Server服务. 3. 用原有的.mdf和.ldf文件覆盖新 ...
  • 今天发现Mysql的主从数据库没有同步 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master status; 也正常. mysql> show master status; +-------------- ...
  • 命令提示符是操作系统中的一项有效的辅助工具,能帮助我们解决好多问题,往往病毒就针对命令提示符,禁用了命令提示符,遇到这种情况,我们应该怎么办呢?下面分别介绍两种解决方法,供大家参考. 方法一:修改注册表 开始→运行→regedit,找到[HKEY_CURRENT_USER\Software\Poli ...
一周排行