我是 Linux 新手。我在 Mac 上安装了 Ubuntu,并使用 rEFInd 启动它。我看到两个选择:
EFI\ubuntu\grubx64.efi
EFI\ubuntu\shimx64.efi
它们都启动进入 Ubuntu。
这两者有什么区别?我应该使用哪一个?我是不是做错了什么导致两者都出现了?
答案1
通常,EFI/ubuntu/grubx64.efi
EFI 系统分区 (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 与安全启动结合使用。