核心是先验证、再写入、最后测试,必须用uuid或label替代/dev/sdx设备名,创建挂载点后手动mount测试,编辑fstab时严格按6字段格式填写,最后用mount -a验证无误方可重启。

用 /etc/fstab 实现开机自动挂载,核心是“先验证、再写入、最后测试”,跳过任何一步都可能让系统卡在 emergency mode。
确认设备唯一标识(别用 /dev/sdX)
设备名(如 /dev/sdb1)会随硬件插拔顺序变化,极易出错。必须改用稳定标识:
- 运行 sudo blkid 查看所有分区的 UUID 和文件系统类型
- 若已设置卷标(如用 sudo e2label /dev/sdb1 backup),可用 LABEL=backup
- 优先选 UUID —— 它不依赖物理位置,重启、换 SATA 口、加新盘都不影响
创建挂载点并手动测试挂载
挂载点目录必须存在,且不能是已有文件系统的一部分(比如不要直接用 /data 如果 / 已满):
- 新建目录:sudo mkdir -p /mnt/data
- 手动挂载验证:sudo mount -t ext4 UUID=xxx-xxx /mnt/data
- 检查是否成功:df -h /mnt/data 或 mount | grep data
- 立即卸载:sudo umount /mnt/data(确保后续 fstab 配置干净)
编辑 /etc/fstab 添加可靠条目
用 root 权限打开文件:sudo nano /etc/fstab,末尾追加一行(字段间用空格或 Tab 分隔):
- 第1列:UUID=xxx-xxx 或 LABEL=xxx(不用 /dev/sdb1)
- 第2列:挂载点路径(如 /mnt/data,必须已存在)
- 第3列:文件系统类型(ext4、xfs、ntfs 等,拼错会报 “unknown filesystem”)
- 第4列:挂载选项 —— 常用 defaults,noatime(提升性能),数据盘建议加 nofail(挂载失败也不阻断启动)
- 第5列:dump 备份标记,日常用 0
- 第6列:fsck 检查顺序,非根分区统一填 2(根分区为 1)
验证无误再重启
这是最关键的安全动作,千万不能省:
- 执行 sudo mount -a —— 若无任何输出,说明语法和路径都正确
- 若报错,按提示排查:UUID 是否复制漏字符、文件系统类型是否写错、挂载点是否存在、对应工具是否安装(如挂 NTFS 需 ntfs-3g)
- 验证通过后,再执行 sudo reboot,重启后用 df -h 确认自动挂载生效











