修复 grub 以正确引导至 CentOS

修复 grub 以正确引导至 CentOS

我有一台双启动计算机,上面装有 Windows 和 CentOS 8 [A],每个都位于不同的分区。我创建了一个新分区并在其上成功安装了 CentOS Stream [B],但现在我无法启动到 [A]。

我该如何修复它?

更多细节
磁盘分区:

/dev/nvm...p1: /boot
/dev/nvm...p2 to /dev/nvm...p4: not relevant
/dev/nvm...p5: /home partition of [A]
/dev/nvm...p6: swap
/dev/nvm...p7: xfs
/dev/nvm...p8: Logival volume with three subpartitions(?).
    - /dev/cl/root: /root of [A]
    - /dev/cl/home: Not in use.
    - /dev/cl/swap: swap created when installing [A]
/dev/nvm...p9: xfs
/dev/nvm...p10: Logival volume with two subpartitions(?).
    - /dev/cs/root: [B]
    - /dev/cs/swap: swap created when installing [B]

我尝试过什么?:

启动到 [B] 后,我首先用 替换文件中cs/root对的所有引用。然后我执行了,正如我在本文中读到的那样cl/root/etc/default/grubgrub2-mkconfig -o "$(readlink -e /etc/grub.cfg)"问题

重新启动后,grub 菜单中会出现四个 CentOS 8 条目。但是,当我尝试启动其中任何一个时,系统进入紧急模式并显示以下错误:[Failed] Failed to start Switch Root.Running systemctl status initrd-switch-root.service, as suggested这里,导致错误描述Failed to switch root: Specified switch root path '/sysroot' does not seem to be an OS tree. os-release file is missing.。我已经尝试了那里提出的解决方案(重新安装/sysrootetc/os-release在其中创建文件),但它不起作用。主树下已经有一个现有/etc/os-release文件。此时,/dev/cl/home已安装在/sysroot.

我还可以做些什么?非常感谢!

相关内容