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.