Tengo Ubuntu 10.10 Server instalado en una máquina de placa única en un entorno semi-integrado; sin teclado o pantalla, solo acceso SSH a él.
Por lo tanto, es realmente frustrante cuando ocasionalmente se inicia y se atasca en el menú de GRUB, esperando que se presione una tecla para seleccionar la primera opción.
¿Cómo configuro GRUB para que en ningún caso espere una pulsación de tecla?
Actualización n. ° 1: No hay menu.lst, ya que es GRUB 2. Pero tengo un / etc / default / grub que es así:
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=""
Actualización n. ° 2: Lo descubrí. En las botas que siguen a las botas fallidas, GRUB deshabilita su propio tiempo de espera. Dado que mostrar el menú hace que un arranque no tenga éxito, este es un bucle ineludible. Este comportamiento puede deshabilitarse editando el archivo /etc/grub.d/00_header y cambiando la función make_timeout:
make_timeout ()
{
echo "set timeout=0"
}
Ahora salga y vuelva a ejecutar el script de actualización de configuración de grub:
sudo update-grub2
No tiene sentido para mí que este comportamiento sea el predeterminado para Ubuntu Server, un producto destinado a máquinas a las que se accede por consola.
/boot/grub/menu.lst
ves?Respuestas:
Para Ubuntu 12.04 LTS hay una opción específica que se puede configurar
/etc/default/grub
.Por ejemplo, si desea tener un tiempo de espera de 2 segundos (evitando así bloqueos para reinicios desatendidos) simplemente agregue la siguiente línea
/etc/default/grub
:Recuerda correr
update-grub
después de eso ...fuente
Aquí hay instrucciones para Ubuntu 10.10, que son ligeramente diferentes de las versiones anteriores. En el archivo /etc/grub.d/00_header, comente la estúpida comprobación de un error de arranque anterior:
Luego actualiza:
Tenga en cuenta que si hay un segundo disco con Linux conectado, grub2 lo encontrará y le preguntará en el arranque cuál desea. Elimine todas las unidades adicionales antes de ejecutar "update-grub".
Ver también https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/797544
fuente
Encontré este descuido de diseño profundamente desagradable con Ubuntu Server 9.10. Su solución me ha ayudado enormemente. Solo quería señalar que la corrección necesaria para 9.10 es diferente ya que no hay una función "make_timeout ()" en el mismo archivo.
Para Ubuntu 9.10, vaya al final del mismo archivo (00_header) y cambie lo siguiente:
a
Como antes, ejecute:
fuente
Configure GRUB para el acceso en serie (y su gestor de arranque, mientras está en él) y mantenga a mano un puerto serie abierto, un cable de módem nulo y un convertidor de USB a RS232 para estas instancias. Ejecuto un servidor sin cabeza y un Guruplug y no lo haría de otra manera.
fuente
Acabo de establecer un tiempo de espera largo para recordfail:
Lo que significa que tiene un tiempo de espera de 30 segundos cuando arranca, si falla el arranque anterior. (No muy diferente de cómo lo hace ese otro sistema operativo ...)
Esto podría (y en mi humilde opinión debería) incluso ser una configuración allí mismo en / etc / default / grub.
fuente
Realmente no sé por qué esta es la acción predeterminada, especialmente para un servidor, pero esto es lo que he implementado en los scripts de configuración de mi servidor.
fuente
Este enfoque es un poco más limpio: solo modifique
/etc/default/grub
para agregar la línea:... cuál podría hacer automáticamente con algo como esto en el aprovisionamiento:
Esto debería ser viable si la variable GRUB_RECORDFAIL_TIMEOUT se menciona en
/etc/grub.d/00_header
(como estoy viendo en 12.04 LTS) en:Tengo un poco de curiosidad acerca de si investigar cómo se registran las fallas podría dar una respuesta aún mejor.
fuente