我想编辑 /boot/grub/grub.cfg 。我保存文件并运行 sudo update-grub。但当我重新启动时,grub 仍在使用旧版本。所以看来 update-grub 没有使用这个文件。我到底应该怎样做呢? (我可以在命令行按“e”并编辑条目。但似乎无法保存此内容,而且我不想在每次启动时继续进行编辑)。
答案1
update-grub
使用grub.cfg
- 它重新生成它。对于再生,它使用
- 您的内核/initrd 映像的列表
/boot
- 配置在
/etc/default/grub
- 以及
/etc/grub.d
.
要永久更改grub.cfg
,您可以执行以下操作之一:
- 不再使用
update-grub
(痛苦) - 编辑上面的文件/配置(需要一点学习,但不需要太多)
- 切换到另一个引导管理器,例如 LILO(都有优点和缺点 - grub 只是当今最受欢迎的,因为它与易于使用的发行版集成得最好)
答案2
令我惊讶的是,我发现运行:
grub-mkconfig -o /boot/grub/grub.cfg
在运行之前update-grub
解决了我遇到的问题。这似乎令人费解,因为 update-grub 看起来像是在调用 grub-mkconfig。无论如何,现在我对 40_custom 等的编辑正在被采纳。
感谢大家的有用回复。
答案3
您可以添加自定义菜单/etc/grub.d/40_custom
,它将被添加到/boot/grub/grub.cfg
文件中update-grub
。
这里解释一下:配置 GRUB v2:
配置文件是
/boot/grub/grub.cfg
,但您不应该直接编辑它。该文件由 grub v2 的 (8) 生成update-grub
,基于:
脚本片段在
/etc/grub.d/
配置文件
/etc/default/grub
要配置 grub“v2”,您应该编辑
/etc/default/grub
,然后运行update-grub
。高级配置是通过修改/etc/grub.d/
.