首页/系统/Linux 运维命令速查/mount 挂载文件系统
磁盘与文件系统51 条

mount 挂载文件系统

mount 把块设备、网络存储、镜像或伪文件系统挂到目录树;-o 控制挂载行为(ro/rw/noatime/nosuid),-a 按 fstab 全量挂载。

Linux 运维命令速查系统更新于 2026-10-13

mount 是什么

Linux 把全部存储组织成一棵以 / 为根的目录树,mount 的作用就是把某个文件系统接到树上的某个目录。挂载点上的原有内容不会消失,只是被新文件系统临时遮蔽,卸载后重新可见。可挂载的对象不限于块设备,还包括网络共享(NFS、CIFS)、镜像文件(loop 设备)、以及 /proc、/sys 这类伪文件系统。线上调整挂载参数用 -o remount,可以在服务不中断的前提下改成只读或加上 noatime。

基本信息

适用平台Linux(util-linux 的 mount);macOS/BSD 的语法与选项差异较大
命令语法mount [-t 类型] [-o 选项] 设备 挂载点;只执行 mount 不带参数则列出当前挂载
常用挂载选项ro 只读、rw 读写、noatime 不更新访问时间、nosuid 忽略 setuid 位、nodev 不解释设备文件、noexec 禁止执行、nofail 挂载失败不阻塞启动、_netdev 标记为网络设备
查看与验证findmnt 按树形或指定挂载点查看、lsblk -f 看设备与文件系统、mount -a 按 fstab 全量挂载并验证语法
权限要求挂载与卸载需要 root(或 CAP_SYS_ADMIN);普通用户挂载移动盘通常由 udisks 之类的服务代理完成
相关文件/etc/fstab 声明开机挂载;/proc/self/mounts 是内核的实时挂载表,现代系统里 /etc/mtab 通常是指向它的符号链接

典型使用场景

  • 新盘上线:分区格式化后挂载到业务目录,写进 fstab 完成持久化
  • 在线调整参数:remount 加 noatime 减少元数据写入,或临时改成 ro 冻结数据后再做备份
  • 救援与取证:以 -o ro 只读挂载受损文件系统,避免写入破坏现场
  • 镜像与安装介质:-o loop 把 ISO 或磁盘镜像当作目录访问
  • 网络存储接入:挂载 NFS、CIFS 共享给应用使用,配合 _netdev 与 nofail 控制启动行为
  • 排查占用:findmnt 确认挂载点与参数,用 lsof、fuser 找出占用导致卸载失败的原因

常用示例

常用示例
mount /dev/sdb1 /data                        # 基本挂载
mount -o ro /dev/sdb1 /mnt/rescue            # 只读挂载做救援
mount -o remount,noatime /                   # 在线调整参数
lsblk -f /dev/sdb1                           # 先确认设备与文件系统类型
mount -t nfs 10.0.0.5:/export /mnt/nfs       # 挂 NFS 共享
mount -o loop /root/disk.img /mnt/img        # 挂载镜像文件
mount -a                                     # 按 fstab 校验并补齐挂载
findmnt /data                                # 查看某个挂载点的详情
findmnt --verify --verbose                   # 校验 fstab 是否有语法问题

常用挂载选项

选项作用适用场景
ro / rw只读或读写挂载数据救援、加挂只读备份盘
noatime不更新文件的访问时间减少元数据写入,对高频读取的目录收益明显
nosuid / nodev / noexec忽略 setuid 位、不解释设备文件、禁止执行程序挂载外部与用户可写介质时的加固组合
nofail设备不存在时不让启动失败可插拔盘与备份盘用,避免开不了机
_netdev标记为网络设备,等网络就绪后再挂载NFS、CIFS 必加,否则开机可能卡住
defaults使用内核默认组合(rw、suid、dev、exec、auto、nouser、async)fstab 里写得最省事又不改变行为
fstab 每行六个字段:设备(推荐写 UUID=)、挂载点、文件系统类型、挂载选项、dump 备份标记、fsck 检查顺序。第五第六列写错不会立即报错但功能失效,例如把挂载选项误写到第六列,系统会忽略这行配置。改完一律用 findmnt --verify 与 mount -a 验证,不要留到重启时才发现。
设备名(/dev/sdb1)在插拔顺序变化或云主机热挂盘后可能漂移,fstab 里统一使用 UUID(用 lsblk -f 查看)或文件系统的 LABEL,避免重启后挂错盘甚至挂错分区。
卸载失败的典型原因是仍有进程占用:用 fuser -vm 挂载点 或 lsof +D 挂载点 找出占用者,先停掉再卸载。NFS 服务端失联时 umount 可能长时间挂住,可用 umount -f 强制,或 -l 惰性卸载先把目录从树里摘掉、等引用释放后再清理。

易错点

  • fstab 写错可能导致开机进入紧急模式或磁盘挂错位置:改完必须用 findmnt --verify 与 mount -a 实跑验证,不要等重启才发现
  • 挂载点下原有文件被遮蔽但没被删除,卸载后才会重新出现;往挂载点写数据前先确认已挂载,避免写进被遮蔽的目录而丢失
  • 用设备名而非 UUID 写 fstab,插拔顺序或热挂盘变化后会挂错设备;统一用 UUID
  • 卸载前不确认占用、或直接拔出正在使用的移动盘,可能造成文件系统损坏;先 umount,失败时用 fuser 与 lsof 定位占用进程
  • 网络存储必须加 _netdev 与 nofail,否则网络未就绪时开机流程会长时间等待甚至失败

数据来源与参考

  • man 8 mount(util-linux)
  • man 5 fstab

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌