Grub 2.04 安装显示成功但进入救援外壳

Grub 2.04 安装显示成功但进入救援外壳

我们的硬件成功运行了 UEFI/GRUB 2.02。内部磁盘 (/dev/sda) 是 GPT,第一个分区从 1Mib 开始,为 5Gb,格式为 vfat。我们运行的是 Gentoo 并使用 overlayfs。我需要将其更新到 2.04,以便我们可以添加安全启动。

我成功使用了 ebuild/emerge 并更新了 GRUB。安装过程中没有出现任何错误,但当系统重新启动并运行 GRUB 时,它会进入救援 shell 并显示“错误:没有这样的分区”。如果我将所有文件复制到“真实”/boot/grub 中的适当位置,则会收到错误:grub_file_filters未找到符号。

重新启动之前,我检查了: - 磁盘分区,它们看起来正确 - 转储了磁盘的前 4 个 LBA,它们似乎是一个 gpt 分区表 - efibootmgr -v 显示了似乎正确的信息:\EFI\BOOT\BOOTX64.EFI

作为 /boot 挂载的 /dev/sda1/ 具有 EFI\BOOT\BOOTX64.EFI 文件以及 grub/x86_64-efi/* 和 grub/grub.cfg 文件。

基本安装后:救援外壳中的‘ls’命令显示(hd0)(hd1)(hd2)(hd3)(hd4)(hd5)内部启动驱动器位于(hd4)。

我从“boot/boot.g1_n2/EFI|grub”复制所有相关文件后:救援外壳中的“ls”命令显示 (hd0) (hd1) (hd2) (hd3) (hd4) (hd4,gpt3) (hd4,gpt2) (hd4,gpt1) (hd5) 内部启动驱动器仍在 (hd4)

我们有一个糟糕且尴尬的调试环境,其中包括最小的 Linux 安装环境和每个 ISO 的 PXE 启动。我觉得我已经尝试了通过谷歌找到的方法,但我肯定我错过了一些东西。

我尝试过https://wiki.archlinux.org/index.php/GRUB#UEFI以及包括本网站上的答案在内的各种其他内容。

我不知道还能尝试什么。还有其他想法吗?

答案1

我终于更新了 grub。我尝试使用 grub-2.04-r1 和 grub-2.04-rc1。都失败了。我终于尝试了 grub-2.04,成功了。我还必须卸载覆盖并直接在 /dev/sda1 上运行 grub-install。

相关内容