由于 Linux Mint 放弃了 KDE 桌面,我一直在探索其他提供 KDE 来替代它的发行版。我在 USB 硬盘上安装了 Kubuntu、Manjaro 和 openSUSE,以便并排评估它们。以下是我的设置方法:
- 我给每个发行版一个单独的分区,它们共享一个交换分区(一次只使用一个发行版),并且 GRUB 位于 USB 驱动器上。
- 程序是安装第一个发行版 (openSUSE),让其安装 GRUB,更新所有内容并配置为尽可能接近我的理想状态。然后安装下一个发行版 (Manjaro),最后安装 Kubuntu,每个发行版都以类似的方式安装。每个后续发行版都替换了 GRUB 并添加了所有以前的操作系统。该过程使每个发行版都处于“完美”状态,并且都经过验证没有明显问题。
然后我开始使用这些发行版进行评估。Kubuntu 和 openSUSE 运行良好。但是,Manjaro 无法启动。它显示一个满是故障数据的屏幕,开头是:
内核崩溃 - 未同步:VFS:无法在未知块 (0,0) 上挂载根文件系统
但是,使用 GRUB 中的“Manjaro 高级选项”选项(使用“后备 initramfs”的选项)可以正常启动。它基于相同的内核;唯一的区别是它包含看起来像是完整的可用驱动程序集,而不是默认选项中的“优化”最小集。目前尚不清楚为什么这会产生影响。
研究症状时,我发现了其他一些类似问题的报告,主要是 Manjaro、Arch(Manjaro 所基于的版本)和其他一些发行版。我使用建议的解决方案没有任何效果。
由于它使用后备 initramfs 启动良好,我寻找方法将该选项作为 Manjaro 的主要选择。但没有任何进展。
长话短说,我去了 Manjaro 支持论坛,那里的常客都熟悉这个问题。我会在这里发布解释和解决方案作为答案,以防其他人遇到这个问题。
答案1
事实证明,Arch 系列发行版对 GRUB 的配置方式非常讲究。Ubuntu 系列发行版(包括 Mint)对 GRUB 的配置方式让 Arch 系列感到难以接受。大多数其他流行发行版并没有那么讲究。他们对 Ubuntu 的做法很满意。他们对 Arch 的做法很满意。Ubuntu 对 Arch 的做法很满意。
因此,如果您要设置包含 Arch 家族发行版(如 Manjaro)的多重启动配置,请最后安装它。这样 GRUB 就会具有“普遍可接受”的配置。
如果你发现自己已经处于这种情况,有一个简单的修复方法可能会有效(对我来说已经修复了)。那就是让 Manjaro 更新 GRUB。
启动 Manjaro。打开终端并输入以下命令:
sudo grub-install /dev/sdx
其中x
是您想要安装 GRUB 的驱动器的标识符(例如sda
或sdb
)。
sudo update-grub
如果这不能解决你的问题,请查看Manjaro 支持论坛,其中有很多讨论和各种其他解决方案。