用 UUID 挂载可解决 Linux 设备名漂移问题,因 UUID 是分区唯一不变标识;需通过 sudo blkid 获取 UUID,编辑 /etc/fstab 添加对应条目,并用 sudo mount -a 验证生效。

用 UUID 挂载是解决 Linux 设备名漂移问题最直接有效的方式。设备名(如 /dev/sdb1)会因插拔顺序、驱动加载时机或云环境重启而改变,但只要分区没被重新格式化,它的 UUID 就始终不变——这才是系统能稳定识别硬盘的“身份证”。
确认目标分区的 UUID
运行以下命令查看所有块设备及其 UUID:
sudo blkid
输出类似:
/dev/sdc1: UUID="a1b2c3d4-5678-90ef-1234-567890abcdef" TYPE="ext4"
注意三点:
- 复制 UUID 值时去掉前后引号
- 区分大小写,不能改写或截断
- 若没显示 TYPE,先检查是否已分区并格式化;必要时运行
sudo partprobe刷新分区表
编辑 /etc/fstab 实现持久挂载
打开 fstab 文件:
sudo nano /etc/fstab
添加一行,格式为:
UUID=a1b2c3d4-5678-90ef-1234-567890abcdef /mnt/data ext4 defaults,nofail 0 2
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
各字段含义:
- 第一列:UUID 值(不带引号)
- 第二列:挂载点路径(需提前创建,如
sudo mkdir -p /mnt/data) - 第三列:文件系统类型(来自
blkid输出的 TYPE,如ext4、xfs、ntfs3) - 第四列:
defaults启用基础读写权限;加nofail可防止该设备缺失时系统启动卡住 - 第五、六列:一般填
0 2(非根分区,不参与 dump 备份,fsck 检查排第二位)
验证配置并生效
执行命令检查语法是否正确:
sudo mount -a
无报错即说明 fstab 条目合法。再确认是否已挂载:
findmnt /mnt/data 或 mount | grep data
常见错误及应对:
- 提示 “unknown filesystem type”:核对 TYPE 是否拼写准确(如
xfs不是XFS),或确认内核已加载对应模块(lsmod | grep xfs) - 挂载点为空或内容异常:检查挂载点目录是否存在、权限是否合理,以及目标分区是否有数据
- NTFS/FAT 分区需普通用户可写:在挂载选项中加入
uid=1000,gid=1000,umask=022
补充提醒
修改前务必备份 fstab:
sudo cp /etc/fstab /etc/fstab.bak
对于 LVM 或 LUKS 加密卷,其 UUID 获取方式不同:
- LVM:用
sudo lvdisplay --colon - LUKS:用
sudo cryptsetup luksUUID /dev/sdX1
硬盘更换或重格式化后,UUID 会变,记得同步更新 fstab 中对应条目。

















