Este artículo fue publicado originalmente en go2linux.org. El dominio ya no me pertenece, pero soy el autor original. Lo republico aquí en garron.me con correcciones y mejoras.

Cuando tienes varios sistemas operativos instalados, el gestor de arranque GRUB muestra un menú al iniciar. Por defecto el tiempo de espera es tan corto que puedes perderlo fácilmente. Esta guía muestra cómo cambiarlo en sistemas Linux modernos con GRUB2.

Nota: Esta guía cubre GRUB2, el gestor de arranque usado por todas las distribuciones Linux modernas (Debian, Ubuntu, Fedora, Arch y otras). El antiguo GRUB Legacy usaba /boot/grub/menu.lst, que ya no existe en los sistemas actuales.

El archivo de configuración

La configuración de GRUB2 está dividida en dos archivos:

  • /etc/default/grub — donde defines tus opciones (edita este archivo)
  • /boot/grub/grub.cfg — la configuración generada (nunca edites este directamente)

Cambiar el tiempo de espera

Abre /etc/default/grub con tu editor:

sudo nano /etc/default/grub

Busca la línea:

GRUB_TIMEOUT=5

Cambia el valor al número de segundos que deseas. Por ejemplo, 15 segundos:

GRUB_TIMEOUT=15

Ponlo en 0 para omitir el menú y arrancar de inmediato. Ponlo en -1 para esperar indefinidamente hasta que hagas una selección.

Estilo de visualización del menú

La opción GRUB_TIMEOUT_STYLE controla cómo se comporta la cuenta regresiva:

GRUB_TIMEOUT_STYLE=menu
Valor Comportamiento
menu Muestra el menú completo y hace la cuenta regresiva
countdown Oculta el menú pero muestra la cuenta regresiva; presiona cualquier tecla para verlo
hidden Arranca en silencio sin cuenta regresiva; presiona Shift o Esc para mostrar el menú

Si quieres que el menú sea visible siempre, asegúrate de que GRUB_TIMEOUT_STYLE=menu esté configurado.

Aplicar el cambio

Después de editar /etc/default/grub, regenera la configuración de GRUB.

En Debian y Ubuntu:

sudo update-grub

En Fedora, RHEL y Arch:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

En sistemas con UEFI (Fedora/RHEL):

sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Verificar el cambio

Comprueba que la configuración generada recogió tu ajuste:

grep "set timeout" /boot/grub/grub.cfg

Deberías ver el valor que configuraste. Reinicia para confirmar que el menú aparece con la nueva cuenta regresiva.

Ejemplo: /etc/default/grub completo para arranque dual

GRUB_DEFAULT=0
GRUB_TIMEOUT=15
GRUB_TIMEOUT_STYLE=menu
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

GRUB_DEFAULT=0 arranca la primera entrada por defecto. Ponlo en saved para arrancar siempre el último sistema operativo que seleccionaste.