我想启动硬盘上非 EFI 系统分区上的 EFI 文件。换句话说,我有一个启动分区,里面有一个我想启动的 .efi 文件,但它位于 0,3 而不是 0,0。这可以吗?
答案1
从广义上讲,这是可能的,但必须满足某些条件:
- EFI 必须能够读取分区。这意味着分区必须使用 FAT(或 Mac 上的 HFS+),或者您必须为相关文件系统安装 EFI 文件系统驱动程序。
- 您必须能够将固件的启动过程定向到该文件。ESP 上的文件正式支持此功能,并且由于拥有多个 ESP 是合法的,因此如果分区使用 FAT,您可以轻松为其提供 ESP 类型代码,它应该可以正常工作。实际上,许多 EFI 也支持从非 ESP FAT 分区启动。但是,如果文件系统不是 FAT,我知道让它工作的唯一方法是使用改装(已停产)或重新索引(其后继版本)以及合适的文件系统驱动程序作为引导管理器。这些程序将引导过程重定向到
.efi
EFI 可以读取的任何文件系统上的任何文件。
如果您需要更多帮助,请发布更多详细信息,例如目标分区上使用的文件系统、您使用的引导管理器或引导加载程序,以及为什么要将目标文件安装.efi
到相关分区而不是 ESP。了解详细信息可能会提出解决方案,或者提供另一种方法来执行您想要执行的操作。在大多数情况下,将文件安装.efi
到 ESP 是最简单的解决方案。我所知道的想要.efi
从 ESP 以外的其他东西启动文件的主要原因是它是 ELILO、gummiboot 或其他必须从其自己的分区加载 Linux 内核的 Linux 引导加载程序。在这种情况下,在 Linux 中安装 ESP 可能很有意义/boot
,这会导致 Linux 内核默认存储在 ESP 上。