bootctl install
当我在 chroot 中运行时出现此错误
filesystem "/boot" has the wrong type for an EFI System Partition
我在网上搜索,其他人也遇到了这个问题,他的解决方案是他缺少启动标志。
当我输入“print”parted
来查看我的分区时,它显示我的 /boot 分区的标志是“msftdata”,这是我应该更改的内容吗?如何?
我正在我的华硕笔记本电脑上安装它(uefi)
答案1
在 中parted
,ESP 分区的标志应该是boot
和esp
,不是msftdata
。
当使用 GPT 分区时parted
,该boot
标志只是esp
flag 的别名。
parted
将 GPT 分区类型 GUID 显示为“标志”。这有点限制,因为有定义了很多GPT分区类型并且只有其中的几个可以作为 中的标志访问parted
。这也很令人困惑,因为您可能认为可以同时应用多个标志,但实际上,GPT 分区在任何时候只能有一个类型 GUID。和标志是互斥的,parted
这一点并不明显,但实际上它们确实如此。esp
msftdata
在 中gdisk
,GPT 分区类型以短代码形式呈现,如ef00
FireFaced 中提到的那样。但这些代码是特定于该工具的:它们在任何其他 GPT 分区工具中gdisk
毫无意义。parted
如果您使用parted
,请msftdata
从分区中删除该标志/boot
并应用该esp
标志。然后该boot
标志应该会自动出现。
从 GPT 分区磁盘 UEFI 启动的要求是:
- 存在具有正确分区类型 GUID 的 ESP 分区(=
esp
中的标志parted
) - 系统固件支持的 ESP 分区中的文件系统(FAT32 是 UEFI 标准所需的文件系统类型,但固件也可以支持其他类型;例如,在 Apple 系统中,ESP 分区可以具有 HFS+ 文件系统。 )
- 以及配置的 UEFI 引导变量,或依赖于体系结构的回退路径中的引导加载程序文件:对于 64 位 x86 系统,回退路径
\EFI\Boot\bootx64.efi
以 FAT32 本机样式表示。
答案2
分区的 GUID 应为ef00
,文件系统应为 FAT32。如果 /boot 符合这些要求,则不需要任何标志。