![从 Centos 8 升级到 Oracle Linux 8 后,VM 无法启动](https://linux22.com/image/212090/%E4%BB%8E%20Centos%208%20%E5%8D%87%E7%BA%A7%E5%88%B0%20Oracle%20Linux%208%20%E5%90%8E%EF%BC%8CVM%20%E6%97%A0%E6%B3%95%E5%90%AF%E5%8A%A8.png)
从 Centos 8 升级到 Oracle Linux 8 后,VM 无法启动并显示 Grub Rescue。我检查了 Hyper-V 设置,发现有两个 efi 固件。
无论我选择哪一个,都会显示 Grub Rescue 菜单。在重新启动之前,我检查了路径,centos 路径不包含 shimx64.efi 文件,而 redhat 包含。更新之前,shimx64.efi 位于 /boot/efi/EFI/centos/ 目录中,更新并重新启动后位于 /boot/efi/EFI/redhat/ 目录中。
我通过禁用 yum.conf 中的以下软件包将操作系统完整更新到 OL8
exclude=grub2* shim-x64* kernel*
但这是次优解决方案。
更新排除的软件包后如何启动系统?
答案1
/boot/efi/EFI/centos
检查了和的内容后
/boot/efi/EFI/redhat
,我注意到grub.cfg
redhat 目录中缺少。
从centos目录复制并运行后,grub2-mkconfig
VM成功启动。
/boot/efi/EFI/centos
目录被删除并且系统启动没有受到影响,尽管在虚拟机管理程序中我仍然可以看到两个 shimx64.efi 文件。