Linux 平台下的引导文件分别 grub.efi 是什么文件?
Linux 平台的引导 grub.efi grubx64.efi shimx64.efi mmx64.efi fbx64.efi 这几个文件,哪个才是引导文件?
在 Linux 平台,使用 UEFI 启动的系统中会包含多个 .efi
文件,它们有不同的用途。以下是这些文件的简要说明:
1. grub.efi 或 grubx64.efi
- 主要引导文件:
grub.efi
(或 grubx64.efi
)通常是主要的引导程序,负责加载 GRUB 引导菜单并引导 Linux 内核。grubx64.efi
是 64 位版本,通常位于 /boot/efi/EFI/<distro>/
中。
- 作用:这是 Linux 系统的实际引导文件,通常在 UEFI 固件中被设置为启动项。
2. shimx64.efi
- 作用:
shimx64.efi
是一种签名引导文件,专为支持 Secure Boot 设计。它由特定 Linux 发行版(如 Ubuntu、Fedora 等)签名,用于绕过安全启动机制并允许加载未签名的引导加载程序(例如 grubx64.efi
)。
- 用法:如果启用了 Secure Boot,
shimx64.efi
将作为主要的启动文件,并加载 grubx64.efi
。
3. mmx64.efi
- 作用:
mmx64.efi
是 MokManager,即机器所有者密钥管理器 (Machine Owner Key Manager) 的组件。它通常在启用 Secure Boot 的系统中使用。
- 用法:它允许用户管理和导入自定义签名密钥(MOK),使用户可以手动允许加载未签名的驱动程序或内核模块。
4. fbx64.efi
- 作用:
fbx64.efi
是 Fallback Boot Loader,在某些发行版中作为备用引导程序。它会尝试找到并引导最优先的启动文件(通常是 grubx64.efi
),并在 grub.cfg
不存在的情况下重新生成引导菜单。
- 用法:主要用于系统无法找到其他引导项时的备用方案,确保系统可以恢复引导。
总结:哪个是引导文件?
- 主要引导文件:在没有启用 Secure Boot 的情况下,
grubx64.efi
或 grub.efi
是系统的主要引导文件。
- 启用了 Secure Boot 的情况下:系统首先会加载
shimx64.efi
,然后由它再加载 grubx64.efi
。
如果系统支持 Secure Boot 并且启用了 Secure Boot,那么 shimx64.efi
是引导文件;否则,grubx64.efi
是引导文件。