修复丢失的 grubx64.efi 和 grub 菜单 rhel 7

修复丢失的 grubx64.efi 和 grub 菜单 rhel 7

我有一台工作服务器,具有 EFI 的 supermicro,由于缺少文件而无法启动它的一个硬盘,该硬盘具有 RHEL 7.6 x86-64 /boot/efi/EFI/redhat/grubx64.efi

我在备用计算机上使用备用 SSD,我从 DVD 安装了 RHEL 7.6 并使其正常工作。然后手动删除/boot/efi/EFI/redhat/grubx64.efi以重现问题。

我的一张安装了 RHEL 7.6 的磁盘是这样分区的

/dev/sda1   XFS   /boot         1GB
/dev/sda2   EFI   /boot/efi   100MB
/dev/sda3   XFS   /             max

到目前为止,我发现我可以grubx64.efi通过执行以下操作来重新创建

  • 使用相应的 RHEL 安装 DVD 启动计算机
  • 选择救援模式
  • 按照提示操作,最终chroot /mnt/sysimage按照菜单提示中的指示执行 a,然后我就可以访问磁盘上的任何内容
  • yum install grub2-efi-modules否则以下命令将出错未找到某物,有一个 bugzilla 指出不是错误。
  • grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=redhat --recheck

这会导致grubx64.efi重新出现在相应的bootloader-id目录下{如我的图片所示},因此我希望此处的“redhat”保持文件夹的命名方式与 RHEL 相同。

然后我做了一个grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg,一切看起来都很好,但是启动后我看到了 grub 文本屏幕,并且不知道此时该怎么做。

如下图所示,我的工作 EFI 选择是该 SSD 的“redhat”。我的其他 2 个磁盘是我的 win10 固态硬盘和我的 centos 固态硬盘,所以忽略它们。到目前为止,我成功地创建了“红色”和“垃圾”,我已经删除了那些相应的/启动/efi/EFI/文件夹,但我想它们仍然显示为我的 EFI 屏幕菜单中的选项。有没有办法纠正或撤消那些不再相关的项目?

最大的问题是如何让 GRUB2 屏幕恢复到传统上应该使用菜单选项显示的内容,即在选择正确的引导选项RedHat Enterprise Linux时使用内核名称?redhat

BIOS grub 文本屏幕

相关内容