跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

Linux怎么配置自动挂载_Linux如何编辑fstab开机挂载【方法】

最稳妥的fstab自动挂载方式是用UUID替代/dev/sdX路径,因设备名受内核探测顺序影响易变;非根分区第六列填0,NTFS需ntfs-3g,挂载点目录须预先创建。 直接用
/etc/fstab
配置自动挂载,最稳妥的方式是用 UUID 替代
/dev/sdX
这类设备路径——否则重启后设备名一变,系统可能卡在 emergency mode。 为什么 fstab 里必须用 UUID 而不是 /dev/sdb1 设备节点名(如
/dev/sdb1
)由内核探测顺序决定:插拔硬盘、加装 NVMe 盘、甚至 BIOS 启动顺序微调,都可能导致它变成
/dev/sdc1
。fstab 按原路径找不着设备,
mount -a
就失败,开机直接进紧急模式。
sudo blkid
查出目标分区的
UUID=...
字符串,复制完整值(含引号) 别信
lsblk
fdisk -l
输出的设备名,它们不保证稳定
/dev/disk/by-id/
看似固定,但某些固件或热插拔场景下也会刷新,官方文档明确不推荐用于 fstab fstab 第六列(pass)填 0 还是 2 很关键 第六列控制 fsck 检查顺序:
0
表示跳过检查,
1
是根文件系统(只能有一个),
2
是其他需检查的分区。填错会导致启动时反复报 “fsck from util- linux ” 错误并阻塞。 非根分区(比如
/data
/backup
)一律填
0
—— ext4/xfs 文件系统自身有日志,不需要每次启动都 fsck swap 分区也填
0
,它不走 fsck 流程 只有你明确知道该分区损坏风险高(比如老旧机械盘 + 非日志文件系统),才考虑填
2
,但要接受启动变慢 mount -a 报错“wrong fs type, bad option” 怎么快速定位 这类错误基本锁定在第四列(
options
)或第三列(
type
)不匹配。常见组合陷阱: CentOS Linux 7.9.2009 CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离线兼容性测试。 下载 NTFS 分区必须写
ntfs-3g
,不能只写
ntfs
;没装
ntfs-3g
包会直接报错 NFS 挂载漏掉
_netdev
选项,
mount -a
会因网络未就绪失败,且开机可能卡住 ISO 镜像挂载要用
iso9660
类型 +
loop
选项,写成
auto
或漏
loop
都会失败 用
sudo file -sL /dev/sdb1
确认实际文件系统类型,别只看格式化时的命令 挂载点目录不存在会导致 silent fail fstab 条目语法完全正确,
mount -a
却没反应?大概率是第二列的挂载点目录(如
/mnt/data
)根本不存在。systemd 不会自动创建目录,也不会报错,只是跳过该条目。 执行
sudo mkdir -p /mnt/data
-p
避免父目录缺失报错) 确认目录权限合理:普通数据盘建议
sudo chown $USER:$USER /mnt/data
,避免后续写入被拒 如果挂载点是子目录(如
/var/log/extra
),确保上层目录(
/var/log
)已存在且可访问 真正容易被忽略的是:fstab 修改后必须用
sudo mount -a
实测,不能只靠
sudo systemctl daemon-reload
。后者只重载 unit,对 fstab 无效;而
mount -a
既校验语法又触发实际挂载,是唯一靠谱的验证方式。

相关文章