grubx64 和 shimx64 有什么区别?

grubx64 和 shimx64 有什么区别?

我是 Linux 新手。我在 Mac 上安装了 Ubuntu,并使用 rEFInd 启动它。我看到两个选择:

  1. EFI\ubuntu\grubx64.efi
  2. EFI\ubuntu\shimx64.efi

它们都启动进入 Ubuntu。

这两者有什么区别?我应该使用哪一个?我是不是做错了什么导致两者都出现了?

答案1

通常,EFI/ubuntu/grubx64.efiEFI 系统分区 (ESP) 上是 GRUB 二进制文件,而EFI/ubuntu/shimx64.efi是 shim 的二进制文件。后者是一个相对简单的程序,它提供了一种在启用了安全启动的计算机上启动的方法。在这样的计算机上,未签名的 GRUB 版本将无法启动,而且无法使用 Microsoft 的密钥对 GRUB 进行签名,因此 shim 弥补了这一缺陷,并添加了与安全启动类似的自己的安全工具。实际上,shim 会将自身注册到固件,然后grubx64.efi在启动它的目录中启动一个名为 的程序,因此在没有安全启动的计算机(例如 Mac)上,启动shimx64.efi就像启动一样grubx64.efi。在启用了安全启动的计算机上,启动shimx64.efi应该会导致 GRUB 启动,而grubx64.efi直接启动可能不起作用。

请注意,可能存在一些歧义。特别是,如果你想使用引导管理器或引导加载程序以外在带有 shim 的安全启动环境中,您必须调用该程序grubx64.efi,即使它不是 GRUB。因此,如果您要在启用了安全启动的计算机上安装 rEFInd,则grubx64.efi可能是 rEFInd 二进制文件。EFI/ubuntu但是,此二进制文件可能不会驻留在 中;它和 shim 二进制文件都可能位于 中。此外,由于您有一台 Mac(不支持安全启动),因此无需以这种方式安装 rEFInd;将 rEFInd 安装为(其默认位置和名称)EFI/refind更有意义。EFI/refind/refind_x64.efi

请注意,rEFInd 文档包含整整一页有关安全启动的内容。user190735,由于您使用的是 Mac,因此阅读此文可能不会对您有所帮助。我提到此文只是为了防止其他读者尝试将 rEFInd 与安全启动结合使用。

相关内容