一句话概括
mount 命令的核心作用是:将一个存储设备(如硬盘分区、U盘、光盘)或一个网络文件系统(NFS)中的特定目录(称为“挂载点”)连接到 Linux/Unix 系统的目录树中,使得用户可以像访问普通目录一样访问该设备上的文件。

详细解释
为了更好地理解,我们可以用一个生活中的比喻:
想象一下你的电脑是一个巨大的文件柜(整个根目录 ),这个文件柜有很多抽屉(各种目录,如 /home, /var),现在你买了一个新的移动硬盘(一个外部存储设备),它本身是一个独立的盒子,里面的文件你无法直接从文件柜里看到。
mount 命令的作用,就是把这个移动硬盘盒子,连接到文件柜的某个抽屉里,你把它连接到 /mnt/usb 这个抽屉,之后,你打开 /mnt/usb 抽屉,就能看到移动硬盘里的所有文件了,当你不再需要它时,你使用 umount 命令,就像把移动硬盘从抽屉里断开连接一样。
在这个过程中:

- 移动硬盘:要挂载的设备(如
/dev/sdb1)。 /mnt/usb抽屉:挂载点。- 连接操作:
mount命令。 - 断开操作:
umount命令。
mount 命令的主要作用
-
访问设备内容 这是最基本的作用,系统启动时,只有根文件系统 是被自动挂载的,其他所有设备,如额外的数据分区、Windows 的 C 盘、U盘、光盘等,都必须通过
mount命令挂载后才能被访问。 -
组织和管理文件系统 通过将不同的设备挂载到不同的目录下,可以实现对磁盘空间的灵活管理。
- 将
/home目录挂载到一个独立的、更大的硬盘分区上,这样即使系统盘出问题,用户数据也能安全保留。 - 将
/var目录(存放日志、缓存等)挂载到另一个分区,防止日志文件占满系统盘。
- 将
-
实现网络文件共享
mount命令不仅可以挂载本地设备,还可以挂载远程服务器上的文件系统,最常见的就是 NFS (Network File System),你可以将另一台 Linux 服务器上的共享目录挂载到本地,就像访问本地目录一样操作远程文件,非常方便。 -
挂载特殊文件系统 除了常规的硬盘文件系统(如 ext4, NTFS),
mount还可以用于挂载一些特殊的“虚拟”文件系统,这些文件系统不存储在物理设备上,而是由内核动态生成。
(图片来源网络,侵删)proc:内核与进程信息相关的虚拟文件系统。sysfs:设备和内核参数的虚拟文件系统。tmpfs:基于内存的临时文件系统,重启后数据会丢失,但读写速度极快。
mount 命令的基本语法
mount [选项] [设备文件] [挂载点]
[设备文件]:要挂载的设备的路径,通常在/dev目录下,/dev/sda1,/dev/nvme0n1p2,也可以是一个网络路径,如server:/share。[挂载点]:一个已经存在的、空的目录,挂载成功后,通过访问这个目录就可以访问设备内容,常见的挂载点有/mnt,/media,/opt等。[选项]:用于指定文件系统类型或挂载行为,-t指定文件系统类型,-o指定挂载选项。
常用示例
示例1:挂载一个 U盘
假设 U盘 被识别为 /dev/sdb1,并且格式化为 ext4 文件系统。
-
创建挂载点
sudo mkdir -p /mnt/usb
-
执行挂载
sudo mount /dev/sdb1 /mnt/usb
-
访问 U盘 内容
ls /mnt/usb
-
卸载 U盘
sudo umount /mnt/usb
注意:卸载时,确保没有任何程序正在使用
/mnt/usb目录下的文件。
示例2:挂载 Windows 的 NTFS 分区
假设 Windows 的 C 盘被识别为 /dev/sda1。
sudo mkdir -p /mnt/windows_c sudo mount -t ntfs-3g /dev/sda1 /mnt/windows_c
这里使用了 -t ntfs-3g 选项,因为 Linux 默认可能不支持完整地读写 NTFS 文件系统,ntfs-3g 是一个常用的第三方驱动。
示例3:挂载 NFS 共享目录
假设有一台服务器 168.1.100,它共享了一个目录 /data。
sudo mkdir -p /mnt/nfs_share sudo mount 192.168.1.100:/data /mnt/nfs_share
示例4:查看当前已挂载的文件系统
mount # 或者更友好的格式 mount | column -t
示例5:挂载 ISO 镜像文件(无需刻录光盘)
假设你有一个 CentOS.iso 文件。
sudo mkdir -p /mnt/iso sudo mount -o loop CentOS.iso /mnt/iso
-o loop 选项告诉内核将这个文件当作一个循环设备来处理,从而实现“虚拟光驱”的效果。
mount 与 /etc/fstab
每次开机后都需要手动 mount 非常麻烦,系统使用 /etc/fstab (file system table) 文件来定义哪些设备应该在启动时自动挂载。
/etc/fstab 文件中的每一行都代表一个挂载项,包含以下字段:
设备文件 挂载点 文件系统类型 挂载选项 dump fsck
为了让上面的 U盘 在每次开机时自动挂载,可以在 /etc/fstab 中添加一行:
/dev/sdb1 /mnt/usb ext4 defaults 0 0
mount 命令是 Linux 系统中连接物理世界(存储设备)和逻辑世界(文件系统目录树)的桥梁,它是系统管理员和高级用户日常管理磁盘和文件系统最核心、最频繁使用的命令之一,掌握 mount 的使用,是深入理解 Linux 文件系统管理的关键一步。
