Destro Asked: 2021-11-25 15:03:20 +0800 CST2021-11-25 15:03:20 +0800 CST 2021-11-25 15:03:20 +0800 CST 为什么 Grub 在我的系统上安装了多次? 772 背景 我的系统上安装了 Win10、Manjaro 和 Artix。但是,Manjaro 和 Artix 都有自己的 grub 安装。目前,不存在任何问题,但我更愿意安装更多发行版进行测试,而不需要额外安装 grub。没有图形安装工具会问我是否已经安装了 grub,或者我是否不想安装 grub。 问题 为什么每个发行版都有自己的 grub 安装?我怎样才能避免这个问题? grub2 dual-boot 1 个回答 Voted Best Answer telcoM 2021-11-26T02:08:29+08:002021-11-26T02:08:29+08:00 GRUB 可以通过几种不同的方式安装,并且不同发行版之间没有标准化。 由于 PC 系统架构的各种复杂性,单独设置功能已知的引导加载程序已经足够困难。尝试使用具有未知功能的未知版本的 GRUB(它是否支持软件 RAID?LVM?哪些 LUKS 加密方法?)一直是发行版维护者不愿意解决的问题。并且当不是特定 GRUB 安装的“所有者”的操作系统安装了内核更新时,它需要知道更新 GRUB 配置的正确过程,以调整自己的引导条目以匹配可用的实际内核版本,这当有多个发行版使用同一个 GRUB 时,这不是微不足道的。 随着systemd被引入systemd-boot,它包括一个方案,允许每个发行版以程序可读的方式指定其所需的内核和 initramfs 文件和引导选项。这被称为引导加载器规范,例如 RHEL 8 的 GRUB 现在使用相对较新的blscfgGRUB 模块来读取这些规范并在引导时动态构建引导菜单,而不是依赖于预先配置的菜单。 如果该规范得到大多数主要发行版的支持,它将为解决“一个 GRUB 和多个操作系统”问题开辟道路。时间会证明它是否会成功。
GRUB 可以通过几种不同的方式安装,并且不同发行版之间没有标准化。
由于 PC 系统架构的各种复杂性,单独设置功能已知的引导加载程序已经足够困难。尝试使用具有未知功能的未知版本的 GRUB(它是否支持软件 RAID?LVM?哪些 LUKS 加密方法?)一直是发行版维护者不愿意解决的问题。并且当不是特定 GRUB 安装的“所有者”的操作系统安装了内核更新时,它需要知道更新 GRUB 配置的正确过程,以调整自己的引导条目以匹配可用的实际内核版本,这当有多个发行版使用同一个 GRUB 时,这不是微不足道的。
随着
systemd
被引入systemd-boot
,它包括一个方案,允许每个发行版以程序可读的方式指定其所需的内核和 initramfs 文件和引导选项。这被称为引导加载器规范,例如 RHEL 8 的 GRUB 现在使用相对较新的blscfg
GRUB 模块来读取这些规范并在引导时动态构建引导菜单,而不是依赖于预先配置的菜单。如果该规范得到大多数主要发行版的支持,它将为解决“一个 GRUB 和多个操作系统”问题开辟道路。时间会证明它是否会成功。