/boot 是否需要安装在单独的主分区上?

/boot 是否需要安装在单独的主分区上?

我双启动 Windows 7 和 Linux Mint。然而,Windows 7 的分区布局占据了所有主分区,让我可以选择多一个主分区或更多逻辑分区。所以,我顺理成章地走了。但是,我只是读到 /boot 应该安装在单独的主分区上,但我将整个根目录安装在逻辑分区上。我的 Linux Mint 看起来运行良好,但这可能有问题吗?

答案1

Linux 并不关心它在哪里/boot。事实上,Linux 本身/boot除了更新其内容外根本不进行访问。只有引导加载程序访问/boot.

在大多数设置中,没有必要放置/boot单独的分区。分离也有缺点/boot:它更复杂,它会占用分区表中的一个条目,可能会耗尽空间……分离的唯一原因/boot是是否有必要使系统可引导。

对于较旧的 PC,通常需要/boot在磁盘的开头有一个小分区。这是由于BIOS限制。 BIOS 是位于计算机闪存中并从硬盘加载操作系统的系统软件。老一代 BIOS 往往无法读取整个磁盘。 UEFI 之前的最后几代 BIOS 以及 UEFI 没有此类限制,因此现在您基本上可以忘记这些限制,但您仍然会找到可追溯到有限 BIOS 时代的教程(以及受过教育的人)由于这个原因创建一个单独的/boot分区并且不知道它不再相关)。

拥有单独/boot分区的另一个原因是如果您的根分区使用引导加载程序不支持的某种机制。在大多数情况下,就像 BIOS 限制一样,这是一个过时的问题:Grub(标准 PC 引导加载程序)支持 Linux 支持的大多数文件系统和分区类型。

UEFI系统,可以将内核映像放在 EFI 分区上。然后你就有了一个单独的引导分区,但它不是特定于 Linux 的引导分区,而是系统范围的引导分区。

如今,拥有单独/boot分区的主要原因是如果您加密了系统分区。知道如何执行解密的代码位于内核中(或位于 initrd/initramfs 中),因此内核(和 initrd/initramfs)需要位于未加密的存储中。即使引导加载程序支持加密机制,您也需要输入两次密码,一次用于引导加载程序,一次用于 Linux 本身(否则必须有一种机制来传达该密码,如果不将密码暴露得比应有的更广,这将非常困难)。

请注意,此答案适用于 PC 计算机。其他类型的计算机以不同的方式启动,并且可能需要也可能不需要将内核放在特殊的位置。

相关内容