一、先科普:为什么不用 /dev/sdb1,要用 UUID?
1. /dev/sdb、sdc 盘符是动态变化的,插拔U盘、新增硬盘后,盘符会乱,导致开机挂载失败
2. UUID 是文件系统唯一固定身份ID,终身不变,是Linux官方推荐的永久挂载方案
3. 重点区分两个ID(新手90%踩坑):
UUID:文件系统ID,挂载fstab必须用这个
PARTUUID:硬件分区ID,普通ext4挂载不能用,写进去直接报错
二、本次实战硬件环境(真实设备信息)
系统:Ubuntu 16.04.7 LTS (xenial)
CPU:2核
内存:2G
新增磁盘:/dev/sdb1 29.8G 空闲磁盘
磁盘真实有效UUID:53ff3bd7-3025-4b11-9923-91a7d4a2c73a
三、完整实操步骤
步骤1:磁盘格式化(全新空盘必做,有数据请勿执行)
我的磁盘是全新空盘,直接格式化为Linux通用的ext4文件系统:
sudo mkfs.ext4 /dev/sdb1⚠️ 重要提醒:有重要数据的磁盘,绝对不要格式化,直接跳过此步骤!
步骤2:创建固定挂载目录
统一在 /mnt 目录下创建挂载文件夹,规范好管理:
sudo mkdir -p /mnt/sdb步骤3:查询磁盘真实UUID(核心关键)
通过blkid精准获取文件系统UUID,杜绝写错ID:
sudo blkid /dev/sdb1本次实战正确输出:
/dev/sdb1: UUID="53ff3bd7-3025-4b11-9923-91a7d4a2c73a" TYPE="ext4" PARTUUID="960067b2-01"
提取有效参数:
文件系统类型:ext4
可用UUID:53ff3bd7-3025-4b11-9923-91a7d4a2c73a
步骤4:编辑开机自动挂载配置文件 fstab
fstab是Linux系统开机自动挂载的核心配置文件:
sudo nano /etc/fstab在文件最末尾添加一行正确配置(严禁加双引号):
UUID=53ff3bd7-3025-4b11-9923-91a7d4a2c73a /mnt/sdb ext4 defaults 0 2配置字段逐行详解(新手必看)
UUID=xxx:磁盘唯一标识,稳定不失效
/mnt/sdb:自定义挂载目录(必须提前创建)
ext4:磁盘文件系统格式
defaults:默认读写挂载参数
0:不开启磁盘备份
2:开机磁盘自检级别,非系统盘统一填2
保存退出:Ctrl+O 回车 → Ctrl+X
步骤5:致命关键!测试配置,禁止直接重启
很多新手写完直接重启,配置错误直接进系统救援模式、开机失败!
执行以下命令测试fstab语法和挂载有效性:
sudo mount -a✅ 无任何输出 = 配置100%正确
❌ 报错 = 配置有误,立即回去修改,或注释错误行
步骤6:查看挂载是否成功
df -h能看到 /mnt/sdb 盘符,说明永久挂载生效,重启依旧保留。
四、本次实操踩坑记录(全网最实用避坑)
坑1:UUID 加双引号
错误写法:UUID="000A449F000C6A3E"
问题:fstab 不识别引号,直接提示找不到UUID,挂载失败
解决:fstab内所有UUID一律不加引号
坑2:混淆 UUID 和 PARTUUID
用分区PARTUUID写入fstab,系统无法识别,挂载报错
解决:只使用 blkid 输出的文件系统UUID
坑3:写完直接重启不测试
fstab配置错误会导致系统开机卡死、进入救援模式,非常麻烦
解决:必须执行 mount -a 测试通过再重启
五、附加常用命令
1. 临时挂载(重启失效)
sudo mount /dev/sdb1 /mnt/sdb2. 卸载磁盘
sudo umount /mnt/sdb3. 修复fstab开机故障(应急)
开机进救援模式后,打开fstab,在错误行前加 # 注释,保存重启即可恢复系统。
六、总结
1. Linux 永久挂载优先使用UUID方案,稳定、不丢盘、不报错
2. 严格区分 UUID / PARTUUID,挂载只用文件系统UUID
3. fstab 禁止加引号、禁止写错参数,写完必须mount -a 校验
4. 老旧Ubuntu 16.04 同样适配这套方案,全Ubuntu通用
5. 该方案适用于:新增机械硬盘、固态硬盘、U盘的永久开机自动挂载
【Linux实战】Ubuntu 磁盘/U盘 永久开机自动挂载 超详细保姆级教程(避坑完整版)
本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
评论交流
欢迎留下你的想法