Mi Ubuntu siempre tuvo un tiempo de espera de 30 segundos, ya sea que hubiera establecido un valor o no. Aquí después es cómo descubrí que recordfail era el valor faltante .
1. Verifique el script de grub real /boot/grub/grub.cfg
En mi humilde opinión, la mejor manera de verificar lo que hará Grub, es abrir /boot/grub/grub.cfg
. Es el script generado automáticamente mediante el grub-mkconfig
uso de plantillas /etc/grub.d
y configuraciones desde /etc/default/grub
.
Alrededor de la línea 109, verá ver algo como:
108 if [ "${recordfail}" = 1 ] ; then
109 set timeout=30 # Note here this value
110 else
111 if [ x$feature_timeout_style = xy ] ; then
112 set timeout_style=hidden
113 set timeout=3
114 # Fallback hidden-timeout code in case the timeout_style feature is
115 # unavailable.
116 elif sleep --interruptible 3 ; then
117 set timeout=0
118 fi
119 fi
En mi caso, con la ayuda de ese script generado, pude descubrir que la recordfail
variable no estaba configurada.
2. Si la recordfail
variable no está configurada, configúrela
Abra /etc/default/grub
en su editor de texto favorito (por ejemplo, vim) y luego configure la variable GRUB_RECORDFAIL_TIMEOUT
en un valor dado, por ejemplo 5 segundos.
Su archivo de configuración debería verse así:
GRUB_DEFAULT=0
GRUB_TIMEOUT=3
GRUB_TIMEOUT_STYLE=hidden
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_RECORDFAIL_TIMEOUT=5
3. Actualice la configuración para ejecutar con update-grub
Último paso, actualice la configuración para ejecutar update-grub
. Por ahora, GRUB2 usará el tiempo de espera establecido. Este comando regenerará el /boot/grub.cfg
archivo.
4. Verifique el resultado del script generado
Nuevamente, abra /boot/grub.cfg
y verifique el resultado alrededor de la línea 109:
108 if [ "${recordfail}" = 1 ] ; then
109 set timeout=5 # Note here this value
110 else
111 if [ x$feature_timeout_style = xy ] ; then
112 set timeout_style=hidden
113 set timeout=3
114 # Fallback hidden-timeout code in case the timeout_style feature is
115 # unavailable.
116 elif sleep --interruptible 3 ; then
117 set timeout=0
118 fi
119 fi
Tenga en cuenta que el valor en la línea 109 ahora es 5 en lugar de 30 como antes.