我在半嵌入式环境中的单板机上安装了Ubuntu 10.10服务器;没有键盘或屏幕,只需SSH访问它.
所以当偶尔启动并卡在GRUB菜单上等待按键选择第一个选项时,它真的很令人沮丧.
如何配置GRUB在任何情况下都不能等待击键?
更新#1:没有menu.lst,因为这是GRUB 2.但我确实有/ etc / default / grub,如下所示:
GRUB_DEFAULT=0 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=2 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX=""
更新#2:我明白了.在启动失败的引导后,GRUB会禁用自己的超时.由于显示菜单使启动失败,这是一个不可避免的循环.通过编辑/etc/grub.d/00_header文件并更改make_timeout函数可以禁用此行为:
make_timeout () { echo "set timeout=0" }
现在退出并重新运行grub配置更新程序脚本:
sudo update-grub2
对我来说,这种行为是Ubuntu Server的默认设置是没有意义的,Ubuntu Server是一种适用于由控制台访问的机器的产品.
对于Ubuntu 12.04 LTS,可以在/ etc / default / grub中设置一个特定选项.
例如,如果您希望有2秒超时(从而避免无人值守重启的挂起),只需在/ etc / default / grub中添加以下行:
GRUB_RECORDFAIL_TIMEOUT=2
记得在那之后运行update-grub ……