首页 > 编程笔记

Linux mount挂载命令详解

当在硬盘上创建了一个分区并将其格式化成某个文件系统之后,这时也还是没有办法将数据或程序存储在这个文件系统上。因为在使用这个文件系统之前,需要先将分区挂载到 Linux 系统上,即把这个分区挂载到 Linux 文件系统的某个目录上。

说到挂载,我们在前面的章节中见过这个词,那么什么是挂载呢?

挂载就是当要使用某个设备时(例如光盘或软盘),必须先将它们对应放到 Linux 系统中的某个目录上。其中对应的目录就叫作挂载点。只有经过操作之后,用户或程序才能访问到这些设备。这个操作过程就叫作文件系统的挂载。

注意,硬盘的分区在使用之前也必须挂载。

通常使用 mount 命令来对文件系统进行挂载:

1) 仅仅使用 mount 命令,会显示出系统中已挂载的设备信息,命令如下:

[root@bogon ~]# mount
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
vmware-vmblock on /var/run/vmblock-fuse type fuse.vmware-vmblock (rw,nosuid,nodev,default_permissions,allow_other)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)


2) 使用 -a 选项来自动检查 /etc/fstab 文件(自动挂载文件)中有无疏漏被挂载的设备文件,如果有,则进行自动挂载操作,命令如下:

[root@bogon ~]# mount [-t 系统类型] [-L 卷标名] [-o 特殊选项] [-n] 设备文件名 挂载点


mount 命令常用选项及功能如表 1 所示。

表 1 mount 命令常用选项及功能
选 项 功 能
-t 系统类型:指定欲挂载的文件系统类型
-L 卷标名:除了使用设备文件名之外,还可以利用文件系统的卷标名称进行挂载
-o 在默认情况下,系统会将实际挂载的情况实时写入 /etc/mtab 文件中,但在某些场景下, 为了避免出现问题,会刻意不写入,此时就需要使用这个选项
-n 特殊选项:可以指定挂载的额外选项

【例 1】挂载 /dev/sda1 分区。
为了方便管理与维护,可以先在 Linux 系统中创建一个 /A 的目录,然后将 /dev/sda1 分区挂载在 /A 目录上。

首先,需要使用 su 命令将用户转换为 root 用户,因为只有 root 用户才有此操作权限。然后,使用 mkdir 命令创建一个 /A 子目录。输入命令如下:

[root@bogon ~]# mkdir /A

执行完 mkdir 命令之后,系统不会有任何消息提示,因此可以使用带有 -F 参数的 ls 命令列出根目录中的所有内容。命令如下:

[root@bogon abcd]# ls -F /
A/ ......

使用 mount 命令把 /dev/sda1 分区挂载到创建的 /A 子目录中,输入命令如下:

[root@bogon ~]# mount /dev/sda1 /A

Linux umount命令:卸载硬件设备

当不再使用一个文件系统或设备时,可以使用 umount 命令将这个文件系统或设备进行卸载。

umount 命令用于卸载已经挂载的硬件设备。umount 命令的语法格式如下:

[root@bogon ~]# umount 设备文件名或挂载点

注意,在使用 umount 命令卸载一个文件系统时,既可以使用设备名,也可以使用挂载点。但如果有用户正在使用一个文件系统,umount 命令将无法卸载该系统。


【例 2】以设备文件名的方式卸载 /dev/sda1。
在【例 1】中创建了一个 /A 的子目录,把 /dev/sda1 分区挂载在 /A 的子目录上。现在使用 umount 命令通过设备文件名的方式卸载这一分区。

在终端页面中输入如下命令:

[root@bogon ~]# umount /dev/sda1

umount 命令执行完之后,系统是没有任何消息提示的,需要使用 mount 命令列出挂载在系统上的文件系统,以验证卸载是否成功。

【例 3】以挂载点的方式卸载 /dev/sda1。
因为在例 2 中已经卸载了/dev/sda1 分区,所以需要使用 mount 命令重新将 /dev/sda1 文件系统挂载在 /A 子目录上。使用命令如下:

[root@bogon ~]# mount /dev/sda1 /A

然后使用单独的 mount 命令查看是否挂载成功,如果挂载成功可以在最后一行看到挂载在 /A 目录上的 /dev/sda1 分区。

使用 umount 命令通过挂载点的方式卸载 /dev/sda1 分区。命令如下:

[root@bogon ~]# umount /A

最后为了验证 /dev/sda1 分区是否已经卸载成功,可以使用 mount 命令进行查看。

优秀文章