温馨提示×

linux mount和fstab关系

小樊
45
2026-09-02 07:47:56
栏目: 智能运维

在 Linux 中,mount/etc/fstab 是“手动挂载”和“开机自动挂载”的关系,可以理解为一个动作和一个配置文件的关系。


一、mount 是什么

mount 是一个命令,用来把某个存储设备(分区、U盘、NFS、ISO 等)挂载到目录树上,使其可以被访问。

示例:

mount /dev/sdb1 /mnt/data

含义:把 /dev/sdb1 这个分区挂载到 /mnt/data 目录。

常见相关命令:

  • mount:查看当前已挂载的设备
  • umount /mnt/data:卸载
  • mount -a:挂载 /etc/fstab 里所有未挂载的项

二、fstab 是什么

/etc/fstab(File System Table)是一个静态配置文件,用来定义:

  • 哪些设备
  • 挂载到哪个目录
  • 使用什么文件系统
  • 使用什么挂载参数
  • 是否开机自动挂载

示例:

/dev/sdb1  /mnt/data  ext4  defaults  0  2

字段含义:

<设备>  <挂载点>  <文件系统>  <挂载选项>  <dump>  <fsck>

三、mount 和 fstab 的关系

1. fstab 是“配置”,mount 是“执行”

  • /etc/fstab 只是说明要怎么挂
  • mount 才是真正完成挂载动作

2. 开机时系统会自动读取 fstab

系统启动流程中:

读取 /etc/fstab → 执行 mount → 挂载文件系统

所以:

  • 写了 fstab ≠ 已经挂载
  • 必须重启,或执行 mount -a

3. mount 可以不依赖 fstab

你可以直接:

mount /dev/sdb1 /mnt/data

即使 fstab 里没有这一条。

4. fstab 里的配置可以用 mount 验证

例如:

mount -a

会按 fstab 挂载所有可挂载项,用来测试配置是否正确。


四、典型使用场景

场景 1:临时挂载(只用 mount)

mount /dev/sdc1 /mnt/usb

重启后失效。

场景 2:永久挂载(mount + fstab)

  1. 先测试:
mount /dev/sdb1 /mnt/data
  1. 写入 fstab:
/dev/sdb1 /mnt/data ext4 defaults 0 2
  1. 重启或:
mount -a

五、常见误区

❌ “写了 fstab 就一定能挂载”
✅ 设备不存在、UUID 错、文件系统错都会失败

❌ “mount 一次就永久生效”
✅ 临时挂载重启失效

❌ “fstab 里写错只是不挂载”
✅ 严重时会导致系统无法启动


六、简单总结

对比项 mount /etc/fstab
类型 命令 配置文件
作用 实际挂载 定义挂载规则
是否持久
系统启动 被调用 被读取

一句话:
fstab 告诉 Linux “该挂什么”,mount 负责“真的挂上去”。

如果你愿意,我也可以帮你写一条具体的 fstab 或排查挂载失败问题。

0