Dell XPS 13 无法启动;grub-install 安装了 grubx64.efi 而不是 shimx64.efi

Dell XPS 13 无法启动;grub-install 安装了 grubx64.efi 而不是 shimx64.efi

我有一台运行 Ubuntu 18.04 的 Dell XPS 13。系统将不会启动已签名的 EFI 引导程序grubx64.efi。系统仅启动shimx64.efi

每次更新 grub 包时,它都会触发grub-install,删除有效的shimx64.efi启动项,并用损坏的无法启动项替换它grubx64.efi

启动时显示的错误信息是:

Failed to open EFI\boot\grubx64.efi - Not found
Failed to load image EFI\boot\grubx64.efi: Not found
start_image() returned Not found

这并不是因为找不到文件,而是因为 Dell EFI 启动不信任该签名;它只信任 shimx64.efi 签名。

我如何才能grub-install安装正确的引导加载程序?

答案1

我的问题是我已经shim安装了该软件包,但是不是 shim-signed

安装shim-signed解决了我的问题。

grub-install现在安装 shimx64.efi 而不是 grubx64.efi。安装该软件包shim是不够的。

答案2

我在使用 XPS 13 7390、Ubuntu 20.04 LTS 时遇到了这个问题。我停用了安全启动,切换到 AHCI(从 RAID)并在启动时破坏了 Windows,当我能够在实时模式下使用 Ubuntu 时,我收到了您在安装过程中遇到的错误。

对我来说,可行的方法是格式化整个磁盘(确保您之前已备份),并创建一个 500MB 的小分区“EFI 系统分区”作为主分区,如下所示:Ubuntu 18.10 没有 EFI 系统分区选项

剩余的分区可以按照通常的方式组织。最简单的方法是将一个分区 ext4 作为根分区,/并留有剩余的磁盘空间。就是这样!

更多细节:就我而言,我所做的是在安装过程中第一次选择选项Erase disk and install Ubuntu,但出现了同样的错误。然后,我看到某处说要选择选项Something else,然后从那里创建了:

  • 如前所述,将 500MB 的小分区“EFI 系统分区”设置为“主分区”(您可能需要删除它然后重新创建它)
  • 创建了一个 ext4 分区,以使用所有剩余磁盘空间作为 root /

以下是最后的样子 在此处输入图片描述

然后继续安装,令人惊讶的是,它成功了!

对于磁盘分区,Redhat(https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/installation_guide/s2-diskpartrecommend-x86) 建议您为 x86、AMD64 和 Intel 64 系统创建以下分区:

A swap partition
A /boot partition
A / partition
A home partition
A /boot/efi partition (EFI System Partition) - only on systems with UEFI firmware 

A swap partition (at least 256 MB) — Swap partitions support virtual memory: data is written to a swap partition when there is not enough RAM to store the data your system is processing. 

相关内容