Linux教程

[Linux]常用命令之【mount/umount】

本文主要是介绍[Linux]常用命令之【mount/umount】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1 mount

mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。
在Linux和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。
要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。
如果发行版安装了自动挂装包,那么这个步骤可自动进行。
在Linux中,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。
挂上一个设备使用mount命令。
在使用mount这个指令时,至少要先知道下列3种信息:

  • 要加载对象的文件系统类型、
  • 要加载对象的设备名称
  • 及要将设备加载到哪个目录下
格式: mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir

-h:显示辅助信息。

-v:显示信息,通常和-f用来除错。

-a:将/etc/fstab中定义的所有文件系统挂上。

-F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在
系统需要挂上大量NFS文件系统时可以加快加载的速度。

-f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常
会和-v一起使用。

-t vfstype:显示被加载文件系统的类型。

-n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系
统的情况下,可以用这个选项取消这个动作。
  • 查看挂载的情况:
df -h
或者
df <dirPath> -h
  • 查看某台主机提供的nfs服务
showmount  -e   192.168.1.2

nc  -v -w 2  192.168.1.2 -z 2049
  • 挂载 ISO镜像文件
mount /iso/CentOS7-1804.iso  /var/www/html/repo/

mount -o loop /iso/CentOS-6.8-x86_64-LiveDVD.iso /var/www/html/repo/
  • 挂载 光盘/软盘
mount   /dev/cdrom /mnt
mount -t iso9660 /dev/hdc /mnt/cdrom
  # 挂载 cdrom
mount -t iso9660 /dev/sdb /mnt/scdrom
  # 挂载 SCSI
mount -t iso9660 /dev/sdc /mnt/scdr
  # SCSI cdr

mount -t ext2 /dev/fd0 /mnt/floppy
  # 挂载软盘
  • nfs挂载
mount  -t nfs  192.168.1.2:/a /b
  • 挂载U盘

如果计算机没有其它SCSI设备和usb外设的情况下,插入的U盘的设备路径是 /dev/sda1

mkdir /mnt/u-disk
mount /dev/sda1 /mnt/u-disk

2 umount 卸载

umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。

格式: umount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir
  • 卸载 by 被挂载的文件目录
umount /mnt
  • 卸载 by 被挂载的光盘介质
umount /dev/cdrom
  • 卸载 by 被挂载的 文件目录 + 光盘介质
umount /dev/cdrom /mnt
  • 注意事项
1. 当你的当前路径为/mnt下,即在挂载文件的里面时,卸载会失败,提示:Dev   is busy.
    解决办法:退出挂载的目录

2. 当有别的程序正在访问挂载的文件时,也会提示卸载失败.
    解决颁发:
      通过 lsof  /mnt  查看是哪个进程占用了/mnt
      kill  -9   $pid  
      umount xx 卸载

Y 补充

(1)Linux可以识别的文件系统

  • Windows 95/98常用的FAT 32文件系统:vfat ;

  • Win NT/2000 的文件系统:ntfs ;

  • OS/2用的文件系统:hpfs;

  • Linux用的文件系统:ext2、ext3;

  • CD-ROM光盘用的文件系统:iso9660。

虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。

(2)确定设备的名称

在Linux中,设备名称通常都存在/dev里。这
些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。
例如,/dev/hda1这个 IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。
a代表第一个设备,通常IDE接口可以接上4个IDE设备(比如4块硬盘)。
所以,要识别IDE硬盘的方法分别就是hda、hdb、hdc、 hdd。
hda1中的“1”代表hda的第一个硬盘分区 (partition),
hda2代表hda的第二主分区,
第一个逻辑分区从hda5开始,依此类推。
此外,可以直接检查/var/log/messages文件,在该文件中可以找到计算机开机后系统已辨认出来的设备代号。

(3)查找挂接点

在决定将设备挂接之前,先要查看一下计算机是不是有个/mnt的空目录,该目录就是专门用来当作挂载点(Mount Point)的目录。
建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录,当作目录的专用挂载点。
举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat):

X 参考文献

  • mount挂载与umount卸载 - 博客园
  • Linux 命令:mount umount - 51CTO
这篇关于[Linux]常用命令之【mount/umount】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!