根据维基百科文章GUID 分区表,分区 GUID 位于卷开头主 GPT 头后面的分区条目 (LBA 2-33) 中。因此,GUID/UUID 值不存储在分区本身内,而是存储在分区表中,因此人们会认为它们应该先验地独立于分区的文件系统类型。
但是,当我查看我的 fstab 文件时,我发现以下两行:
UUID=9a260e1b-f1eb-4cec-9273-f5743539805c / ext4 errors=remount-ro 0 1
UUID=D8BD-647A /boot/efi vfat umask=0077 0 1
其中类型为 vfat 的 /boot/efi 分区的 UUID 格式与通常遇到的 UUID 格式不同。
为什么 vfat 分区使用不同的格式?分割GUID/UUID 格式取决于文件系统类型分区?
答案1
UUID=
标签不是分区 ID。它们是文件系统 ID。几乎所有文件系统的标头中都有一个唯一 ID,独立于分区表 - 在您的示例中,ext4 恰好使用相同的“128 位 UUID”格式,但它仍然是特定于 ext4 的 ID。(NTFS 有 64 位 ID,LVM 和 ZFS 有...)
对于 GPT 分区表 GUID,您正在寻找PARTUUID=
标签。
lsblk -o name,fstype,uuid,label,partuuid,partlabel