fs 的 UUID - 它们存储在哪里?

fs 的 UUID - 它们存储在哪里?

最近我尝试安装 Ubuntu Studio 18,重启后出现 GRUB 提示,而不是 Linux 图形登录。惊讶的是,我开始调查,发现grub.cfgESP分区中的文件包含以下内容:

search.fs_uuid ae6b90f7-0624-437a-9526-79f86df44354 root hd0,gpt2 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

我预计看到的 uuid 可能不是指包含 Linux 文件的分区,而是指磁盘上的其他分区,但是 GRUB 文件中的 uuid 并不在我从实时 USB Ubuntu Studio 运行 blkid 启动 Linux 时看到的列表中。从维基百科我了解到 Linux 使用随机 UUID,但是我找不到有关 UUID 存储位置的信息。如果在硬盘分区表中,那么为什么GRUB中的UUID可能与blkid给出的不同?

答案1

感谢 Katu 的评论,我现在知道 UUID 存储在 Linux 文件系统 (ext2/3/4) 的超级块中。顺便说一句,我在 ext fs 上安装了 Linux。所以我知道 UUID 不是每个系统实体为自己使用而制作的东西,而是对于同一分区来说是相同的。

为什么安装程序放入该 UUIDgrub.cfg对我来说仍然是个谜,但是,在我编辑该文件并将其中的 UUID 替换为 blkid 为我的 root fs 提供的 UUID 后,Linux 正常启动。

相关内容