无论如何要使GRUB超时失效保护?


11

我在随机(远程)位置安装了一堆无头服务器,所有服务器均运行Ubuntu 11.04。有时,盒子掉下来却再也没有掉下来,最终有人出去检查它们,发现它们坐在GRUB屏幕上。

在正常启动时,机器会毫无问题地通过GRUB尖叫,但是似乎内置了某种“故障保护”功能,如果机器无法正常启动,则下次启动该机器时,它将停止在GRUB。

我意识到这是出于我的安全考虑,但是由于机器的设置方式,我希望它没有发生(或者至少在一两分钟后超时并尝试重新启动)。反正有禁用此功能?

Answers:


9

Ubuntu具有“可爱”(阅读:烦人)功能,它记录启动失败并设置grub超时-1,从而禁用自动启动。您不是唯一一个不喜欢它的人,请参见此处

您应该可以通过编辑来解决此问题/etc/grub.d/00_header,找到以下内容:

if [ "\${recordfail}" = 1 ]; then
  set timeout=-1

..并将其更改为合理的名称,例如。

if [ "\${recordfail}" = 1 ]; then
  set timeout=10

..然后跑update-grub

在升级grub2软件包(或操作系统)时,此文件可能会重置为默认值,因此请当心。


请注意,在此注释所链接的错误报告中,已发布了一个修补程序,该修补程序已反向移植到12.04和11.10。它需要进行配置才能按启动板错误的注释13和14中所述进行工作。
亚历克斯

1

从Ubuntu 12.10(可能还移植到Ubuntu 12.04)开始,以下将在Ubuntu上运行:

$ echo GRUB_RECORDFAIL_TIMEOUT=20 | sudo tee -a /etc/default/grub
$ sudo update-grub
$ sudo env DEBIAN_FRONTEND=noninteractive dpkg-reconfigure grub-pc

Alex在2013年10月针对Shane Madden在2012年1月的回答中提到了上述内容。请参阅此页面上的评论13和14:

https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/669481

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.