简介
mount命令是在Linux当中比较常见的命令,无论是新增分区、插入U盘还是插入光盘都要使用mount命令挂载后才能读取数据载体中的数据,该篇最好结合[RHEL7基础篇-5] 文件系统和磁盘管理当中的演示案例来学习该命令。
命令介绍
-
语法方式
mount [-afFhnrvVw] [-L<标签>] [-o<选项>] [-t<文件系统类型>] [设备名] [加载点]
参数 备注 -a,–all 加载/etc/fstab当中记录的所有文件系统 -n,–no-mtab 挂载的文件系统不写入到/etc/mtab,例如当/etc为只读时使用 -r,–read-only 挂载的文件系统为只读 -w,–rw,–read-write 挂载的文件系统为可读写,这是默认的设置,和-o rw功能相同 其他 可以通过man mount来查询其他参数的使用方法 -
挂载选项的指定和介绍
mount命令是通过-o,–options来使用选项的指定的,下面将介绍常用的挂载选项
选项 | 备注 |
---|---|
defaults | 使用默认的选项。默认选项为rw、suid、dev、exec、auto nouser和async |
async | 以非同步的方式执行文件系统的输入输出动作 |
rw | 可读写 |
auto | 必须在/etc/fstab文件中指定此选项。执行-a参数时,会加载设置为auto的设备,取消选取为noauto。 |
dev | 可读文件系统上的字符或块设备,取消选项为nodev。 |
exec | 可执行二进制文件,取消选项为noexec。 |
nouser | 禁止非root用户来挂载文件系统。(对应的user,允许非root挂载,暗含noexec、nosuid、nodev。users是指所有人都可挂载) |
suid | 允许suid位起作用 |
- 常用挂载
命令 | 备注 |
---|---|
mount -t vfat /dev/hda7 /mnt | fat32的分区 |
nount -t ntfs-3g /dev/sdb2 /mnt | ntfs分区 |
mount -t nfs 192.168.1.2:/data /mnt | nfs文件挂载 |
mount -t smbfs -o username=guest,password=guest //machine/path /mnt/ | samba挂载 |
mount -o loop abc.iso /mnt | iso文件挂载 |
mount /dev/sda3 /mnt | 默认挂载 |
-
–bind和–rbind
参数 备注 -B,–bind 文件挂载到文件 -R,–rbind 目录挂载到目录 1)–bind实例讲解
文件挂载到文件:
mount —bind /tmp/hosts /etc/hosts
mount —bind /tmp/test/1 /tmp/test/2
注:1和2为文件
注:绑定后若文件1或文件2作出修改都会同步,在更新未知是否正确的配置文件时可以使用该命令来进行测试,例如:1为新的配置文件,2为旧的配置文件,当我需要测试时输入mount --bind 1 2,此时1挂载到2当中,2显示的是1的内容,但是2原本的内容并未丢失,如果配置错误或者失败则可以使用umount 2来取消挂载,2恢复原来的配置。
目录挂载到目录:
mount —bind /tmp/test/1 /tmp/test/2
注:1和2 为目录
2)–rbind实例讲解
3)bind的只能挂载单一的文件系统,在其中挂载的其他文件系统不会被挂接到新访问点,rbind则是可以!例如:[目录1] 挂载到 [目录2] ,当 [目录1] 上再挂载了一个 [新的分区](不同文件系统格式)时bind并不会在 [目录2] 上,而rbind则会以分区的形式挂载,如图所示
–bind:当前目录的文件系统格式为ext4,sdb3为xfs,现在可以看到的是./test/1/mnt/当中是有文件的,而./test/2/mnt/当中是没有文件了
–rbind:相同条件下,把bind换成rbind,现在可以看到的是./test/1/mnt/当中是有文件的,./test/2/mnt/也出现了相同的文件
注:当挂载的目录下有进程运行或者目录被打开时,无法进行umount,会提示挂载的目录忙,这里和Windows的弹出U盘和删除文件是一个道理。