GRUB手动添加的启动项不显示,请求排查问题
GRUB手动添加的启动项不显示,请求排查问题
兄弟,我懂这种明明看起来一模一样但就是不生效的糟心感觉!你遇到的问题大概率是GRUB配置的几个常见小坑,我给你列几个排查方向:
- 检查语法格式是否严格符合要求:GRUB的
menuentry条目对语法要求很苛刻,比如:- 确保
menuentry后面的名称用双引号/单引号包裹,括号{}要完整闭合 linux、initrd这类命令后面的路径和参数之间要有正确的空格,不能漏或者多- 有没有不小心打错关键字?比如把
menuentry拼成menuentryy这种小错误
- 确保
- 确认条目放在了正确的配置文件里:别直接修改
/boot/grub/grub.cfg(这个文件会被update-grub覆盖),正确的做法是把自定义条目加到/etc/grub.d/40_custom文件里,同时要确保这个文件有可执行权限(可以用sudo chmod +x /etc/grub.d/40_custom设置) - 务必执行更新命令:手动添加条目后,一定要运行
sudo update-grub(或者等价的sudo grub-mkconfig -o /boot/grub/grub.cfg),让GRUB重新生成配置文件,不然新条目根本不会被识别 - 检查生成的配置文件:执行完更新命令后,去
/boot/grub/grub.cfg里搜你写的Darkmatter条目,如果搜不到,说明你的自定义条目有语法错误,GRUB直接跳过了它 - 排查路径和拼写错误:比如你写的内核镜像路径、initrd文件路径是不是和实际的一致?如果路径错了,GRUB也会忽略这个无效条目
- 有没有被注释掉?:不小心用
#把整个条目注释掉的情况也很常见,检查一下你的条目前面有没有多余的注释符号
备注:内容来源于stack exchange,提问作者FalconSN
相关产品推荐
相关产品推荐

