GRUB2:添加第二组标志作为每个内核的选项

GRUB2:添加第二组标志作为每个内核的选项

我使用的是 Fedora,GRUB2 是我的引导加载程序。我知道如何很好地更改标志/etc/default/grub,当我重新配置时,这会反映在我的启动菜单中,并且每当我更新内核时都会自动更新(就像我定期做的那样)。

我想要有第二个像这样的 GRUB 选项,但带有一组备用标志。因此,当我打开电源并到达 GRUB 时,我希望看到这两个选项中的一个。我了解如何向 40_custom 文件添加自定义行并添加新的菜单项,但在我看来,这似乎附加到我将放入该项目中的特定内核版本。如何添加一种替代标志选项来更新常规选项?

答案1

例如,您可以使用任何其他文件(如 39_custom)。基本上它是一个 shell 脚本,可以以类似的格式输出配置,您可以将其简单地写入 40_custom(可能还​​有一些注释)。因此,您可以自由地检测该脚本中最新的可用内核,并使用该信息构建您的自定义行。
请注意,除了您在 40_custom 中硬编码的有效菜单项内容(以及可能的注释行)之外,不要将该脚本中的任何垃圾输出到 STDOUT。

您还可以在默认配置文件(10_linux 等)中查看如何搜索当前内核。

答案2

我想出了我的解决方案:Fedora 30 存储菜单条目/boot/loader/entries/(格式简单明了)。我设置了一个脚本来/etc/kernel.postinst.d/将新安装的内核复制到/boot/vmlinuzintramfs 中,类似于通用名称,然后/boot/loader/entries/引用这些文件设置一个新文件(我也尝试了符号链接,但这由于某种原因不起作用:GRUB报告说找不到文件)。

相关内容