我已经使用 manjaro(基于 arch 的发行版)一年了,我真的很喜欢使用这个发行版。但我有一个爱好,就是发行版并使用双引导 Manjaro 和其他 Linux。 manjaro 使用 grub 配置,不幸的是,它不够友好,无法与其他 Linux 共享。每次第二个 linux 更新其内核时,manjaro grub 就会被我的第二个 linux grub 取代,并且我无法启动到我的 manjaro linux。而且每个月都要修复manjaro grub,非常烦人。
我可以卸载我的第二个 linux grub,这样每次我更新我的第二个 linux 时它就不会入侵我的 manjaro grub 吗?
答案1
当您安装第二个 Linux 操作系统时,无需进行grub
第二次安装。只需在安装第二个操作系统后启动 Manjaro 并运行update-grub
,如有必要,运行os-prober
。
如果这些都没有检测到您的第二次安装,那么您将需要运行以下命令:
mount /dev/sdXY /mnt # sdXY being your bootable partition of the second OS, e.g. sda3
update-grub # and if necessary, os-prober
这将为您的第二个操作系统创建一个 grub 条目,甚至适用于 Windows。
一个简单的设置是这样的:
/dev/sda
|-sda1 # First OS
|-sda2 # Swap
|-sda3 # Second OS
在这里,它们共享交换区,并且所有内容都包含在每个操作系统的 1 个分区中。更好的方法是lvm
创建 2 个独立的加密容器,因此它们不共享交换,并且有 2 个不同的引导分区。如果您的计算机可以支持两个独立驱动器的空间,则更好的是使用两个不同的磁盘设置双启动。
我参考了这篇博文我已经使用上述方法成功设置了许多不同的双启动。
答案2
因为我们谈论的是 Linux,所以当然有很多方法可以解决这个问题。如果您想继续使用 GRUB2,请参考上面的答案。然而,为了个人参考和记录替代方案,以下内容也适用:
使用 Manjaro 启动 Systemd:
为了节省空间而不是重复教程,我将仅添加一个指向在 Manjaro 中实现此设置的记录过程的链接(非常详细,有大量示例):关联
另一个很棒的资源是全能的 Arch Wiki:关联
长话短说
- 将当前的 EFI 分区挂载到 /boot
- 创建 loader.conf 文件
- 为您想要包含在启动菜单中的每个发行版创建 .conf 文件
这两个资源都应该提供有关如何创建各种 .conf 文件的大量文档,但请记住,您将需要不同磁盘驱动器的 UUID:blkid /dev/sdXY
这将使您能够控制一切。它可能不像 GRUB2 那样用户友好,但您可以直接决定引导加载程序的功能。