我有一台工作服务器,具有 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