【linux命令讲解大全】110.Linux常用命令解析:showmount和umount的用法及实例

2024-03-02 13:54:34 浏览数 (2)

showmount

显示NFS服务器加载的信息。

补充说明

showmount命令查询mountd守护进程,以显示NFS服务器加载的信息。

语法
代码语言:javascript复制
showmount [选项] [参数]
选项
  • -d:仅显示已被NFS客户端加载的目录;
  • -e:显示NFS服务器上所有的共享目录。
参数
  • NFS服务器:指定NFS服务器的IP地址或主机名。

umount

用于卸载已经加载的文件系统。

补充说明

umount命令用于卸载已经加载的文件系统。可以使用设备名或挂载点来执行卸载操作,但最好通过挂载点卸载,以避免在使用绑定挂载(一个设备,多个挂载点)时产生混乱。

语法
代码语言:javascript复制
umount [选项] [参数]
选项
  • -a:卸除/etc/mtab中记录的所有文件系统;
  • -h:显示帮助;
  • -n:卸除时不将信息存入/etc/mtab文件中;
  • -r:若无法成功卸除,则尝试以只读方式重新挂载文件系统;
  • -t <文件系统类型>:仅卸除指定文件系统类型的选项;
  • -v:执行时显示详细的信息;
  • -V:显示版本信息。
参数
  • 文件系统:指定要卸载的文件系统或其对应的设备文件名。
实例

下面两条命令分别通过设备名和挂载点卸载文件系统,并输出详细信息:

通过设备名卸载:

代码语言:javascript复制
umount -v /dev/sda1
/dev/sda1 umounted

通过挂载点卸载:

代码语言:javascript复制
umount -v /mnt/mymount/
/tmp/diskboot.img umounted

如果设备正忙,则无法卸载。卸载失败的常见原因是,某个打开的Shell当前目录为挂载点的某个目录:

代码语言:javascript复制
umount -v /mnt/mymount/
umount: /mnt/mymount: device is busy
umount: /mnt/mymount: device is busy

有时候,导致设备忙的原因并不容易找到。在这种情况下,可以使用lsof列出已打开的文件,然后搜索列表以查找待卸载的挂载点:

代码语言:javascript复制
lsof | grep mymount   # 查找mymount分区中打开的文件
bash   9341  francois  cwd   DIR   8,1   1024    2 /mnt/mymount

从上述输出可知,mymount分区无法卸载的原因是由于运行PID为9341的francois用户的bash进程。

另一种对付系统文件忙的方法是执行延迟卸载:

代码语言:javascript复制
umount -vl /mnt/mymount/   # 执行延迟卸载

延迟卸载会立即卸载目录树中的文件系统,直到设备不再繁忙时才清理所有相关资源。卸载可移动存储介质还可以使用eject命令。以下命令将卸载CD并弹出光驱:

代码语言:javascript复制
eject /dev/cdrom   # 卸载并弹出CD

0 人点赞