小易说IT 小易说IT

如何查看Linux系统的磁盘的UUID?

重点:Linux系统的/etc/fstab 里要用的是【文件系统 UUID】,不是 PARTUUID(分区 UUID),别搞混!

方法 1:blkid(生产首选,推荐)

需要 root,直接读取文件系统元数据,最准,写 fstab 就拿这个 UUIDRed Hat

# 列出所有分区
blkid
# 指定单个分区查看
blkid /dev/sdb1

示例输出:

/dev/sdb1: UUID="0425f958-812c-4018-805d-9123456abcde" TYPE="xfs" LABEL="data"

只输出纯净 UUID(脚本提取用):

blkid -s UUID -o value /dev/sdb1

方法 2:lsblk -f(树形可视化,非常好用)

普通用户也可以执行,能同时看到:设备树、挂载点、FSTYPE、UUID、LABEL,方便对照确认

lsblk -f

精简只看 NAME、FSTYPE、UUID:

lsblk -o NAME,FSTYPE,UUID,MOUNTPOINT

只提取单个分区 UUID:

lsblk -no UUID /dev/sdb1

方法 3:查看 /dev/disk/by-uuid 软链接目录

udev 自动生成的符号链接,直接看映射关系

ls -lh /dev/disk/by-uuid/

输出示例:

lrwxrwxrwx 1 root root 10 Nov  8 10:00 0425f958-812c-4018-805d-9123456abcde -> ../../sdb1

✅ 快速区分:UUID vs PARTUUID

  • UUID=:文件系统 UUID → fstab 挂载用这个(xfs/ext4/swap/nfs)

  • PARTUUID=:GPT 分区表的分区标识,分区本身的 ID,一般挂载不用

📌 常见坑

  1. 未格式化的裸分区,没有文件系统 UUID;

  2. FAT32 的 UUID 是短格式,如 ABCD-1234,也可以直接写进 fstab;

  3. LVM 逻辑卷,blkid 看到的是 LV 的 UUID,不是底层物理分区的 UUID,fstab 直接用 LV 的 UUID 即可;

  4. 不要复制 PARTUUID 写到 fstab 的 UUID= 位置,会挂载失败。

📌 标准工作流(你配置 fstab 时一套流程)

lsblk                  # 先理清磁盘结构,确认 /dev/sdb1 是目标分区
blkid /dev/sdb1        # 拿到UUID,复制
cp /etc/fstab /etc/fstab.bak
# 写入fstab,然后校验
mount -a

本文原创作者:易君召,详见:https://www.yijunzhao.cc/about,转载请注明出处。

原文链接 https://www.yijunzhao.cc/archives/how-to-check-linux-disk-uuid

欢迎访问 https://www.yijunzhao.cc/

https://www.yijunzhao.cc/