![除非按下 Shift 键,否则如何隐藏 grub 启动菜单?](https://linux22.com/image/40450/%E9%99%A4%E9%9D%9E%E6%8C%89%E4%B8%8B%20Shift%20%E9%94%AE%EF%BC%8C%E5%90%A6%E5%88%99%E5%A6%82%E4%BD%95%E9%9A%90%E8%97%8F%20grub%20%E5%90%AF%E5%8A%A8%E8%8F%9C%E5%8D%95%EF%BC%9F.png)
我已阅读论坛,但似乎我的 grub 启动菜单不遵循配置文件的形式。
我希望菜单不出现,除非Shift按下 。
我的 grub 菜单每次启动都会出现,并一直保留在那里,直到您选择菜单项。
我的当前/etc/default/grub
是:
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=3
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomdmonddf nomdmonisw"
GRUB_CMDLINE_LINUX=""
GRUB_FORCE_HIDDEN_MENU="true"
export GRUB_FORCE_HIDDEN_MENU
(我试过true
带引号和不带引号的,没有区别)
我也做过update-grub
和update-grub2
。
谁能告诉我为什么当我的系统启动时,它只是出现在 Grub 菜单中?这是一个无头系统,这不好,因为我必须添加键盘才能重新启动。
这不是双引导系统。
答案1
你需要使用GRUB保持转移脚本。
如果您仔细阅读 GRUB 手册,您会发现您想要的东西无法通过标准设置实现。
只需在这里下载脚本即可GRUB 保持移位并按照自述文件中的说明进行操作。
答案2
在提出这个问题的时候,Debian 开始发布一个用于“快速启动”的 Ubuntu 补丁。
https://salsa.debian.org/grub-team/grub/-/blob/master/debian/patches/quick-boot.patch
我还知道 Manjaro 和 Fedora(称为自动隐藏)也紧随其后。
答案3
修改文件中的以下行/etc/default/grub
:
GRUB_HIDDEN_TIMEOUT=0.0
GRUB_TIMEOUT=0.0
终于跑了update-grub
。
答案4
检查/boot/grub/grub.cfg
文件以查看运行时更改是否正在传递sudo update-grub
。该sudo update-grub
命令应该/boot/grub/grub.cfg
在运行/etc/default/grub
时进行更新/etc/grub.d
。如果不是,那么您可以临时编辑/boot/grub/grub.cfg
以使其工作,但当内核升级或update-grub
再次运行时它可能会被覆盖。
如果您检查/boot/grub/grub.cfg
并且更改已应用但仍然无法正常工作,则问题可能出在设置上,但正如我现在看到的那样,它们看起来是正确的。