¿Cómo oculto el menú de GRUB que aparece al comienzo del arranque?

42

Detuve el arranque dual y ya no quiero tener que elegir el sistema operativo. Quiero iniciar Ubuntu 12.04 directamente sin ver el menú de GRUB.

¿Cómo puedo lograr eso?

Alex Poulos
fuente
Si detuvo el arranque dual, probablemente haya dejado de usar el otro sistema operativo. ¿Por qué no puede eliminar el otro sistema operativo para que ubuntu pueda arrancar normalmente?
karthick87
si alguna de estas respuestas "respondió" a su pregunta, acepte una de ellas :)
blade19899
@ david6: No veo cómo ninguno de esos son duplicados de esta pregunta. Creo que se trata de ocultar el menú de grub durante el tiempo de espera.
oKtosiTe
Lo sentimos, se suponía que el segundo enlace era: askubuntu.com/questions/66070/… Esto incluye cómo: Ocultar el menú Grub2 y usar la opción de menú predeterminada
david6

Respuestas:

33

Simplemente puede cambiar la configuración de grub.

escriba en la terminal

sudo -H gedit /etc/default/grub

necesitas cambiar esto

Cambiar GRUB_HIDDEN_TIMEOUT_QUIET=falsea

GRUB_HIDDEN_TIMEOUT_QUIET=true

Guarda el archivo y cierra

Tipo sudo update-grub

Si no obtiene el resultado que desea, vea este error .

bisagra
fuente
77
actualmente está cambiado a True pero todavía veo el menú de comida ...
Alex Poulos
Estoy en 12.04 y probé esto, pero ya decía "verdadero" y todavía aparece. Los únicos otros sistemas operativos que tengo son a prueba de fallos y Memtest, eso es todo. Ya eliminé mi partición de Windows y actualicé grub y el menú aún se muestra.
Alex Poulos
@AlexPoulos mira este enlace
hingev
2
Me funcionó al cambiar el tiempo de espera a 0 y luego hacerlo silencioso. Gracias
king_julien
23

Resolví este problema deshabilitando OS Prober. Lo hice porque en /boot/grub/grub.cfgla parte generada por la plantilla /etc/grub.d/30_os-prober, hubo una anulación de "tiempo de espera" a 10 y "estilo" al menú.

Edite /etc/default/gruby agregue esta línea:

GRUB_DISABLE_OS_PROBER=true

¡Espero que encuentres esto útil!

Por cierto, mi / etc / default / grub completo es:

GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_DISTRIBUTOR= [...]
GRUB_DISABLE_OS_PROBER=true
GRUB_RECORDFAIL_TIMEOUT=0

Codificación feliz

Agus Arias
fuente
2
que funcionó para mí, pero lo que hizo que al desaparecer las otras opciones de arranque, pero el que viene por defecto ...
opensas
1
@opensas Si no se muestra el menú de selección, ¿cómo sabe qué opciones de arranque "aparecen" en él? Si desea deshabilitar el menú, ¿por qué desearía opciones de arranque no predeterminadas?
Kyle Strand
si deja de lado la parte 'GRUB_TIMEOUT_STYLE = hidden', la cuenta regresiva es visible, pero nada más, a menos que la interrumpa. Eso le permite acceder al menú y cambiar la configuración de arranque, incluso mientras lo hace mucho menos obvio.
Stonecrusher
Si se quiere poder ver el menú de arranque después de mantener presionada la tecla Mayús, GRUB_TIMEOUT debe establecerse en mayor que cero (por ejemplo, GRUB_TIMEOUT = 5). De lo contrario, otras opciones de arranque (por ejemplo, Windows) no se pueden activar si es necesario.
user3804598
En Ubuntu 18.04 LTS, GRUB_RECORDFAIL_TIMEOUT=0es el único cambio /etc/default/grubque elimina el tiempo de espera de 30 segundos (y el menú del cargador de arranque GRUB por completo), lo que parece ser un error: bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/ comentarios / 4 . Además, sudo update-grubdebe ejecutarse para que las modificaciones surtan efecto, lo cual no se menciona en la Respuesta. Tenga en cuenta que 0no se recomienda establecer este valor en (consulte el enlace citado anteriormente) a menos que la máquina sea una VM de desarrollo o similar.
Ben Johnson
11

Intenté todos esos consejos que no funcionaron, terminé reduciendo el tiempo de espera a cero de la siguiente manera:

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
Ndodemfishane
fuente
ejecutar sudo update-grubdespués de cambiar los valores
niksmac
Lo mismo para mi. Ejecuté "update-grub", no funcionó.
Robin Winslow
1
Esto es lo que mi / etc / default / grub pero todavía obtengo una cuenta regresiva de 10 segundos con el menú grub mostrando.
zorkerz
8

Debe editar el archivo en /etc/default/grubpara evitar mostrar el menú de grub.

Por defecto, las entradas en esos archivos se ven así.

GRUB_DEFAULT = 0
# GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = false
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "splash silencioso"
GRUB_CMDLINE_LINUX = ""
  • Quite la #marca de la segunda línea y
  • Cambia la línea GRUB_HIDDEN_TIMEOUT_QUIET=falsea GRUB_HIDDEN_TIMEOUT_QUIET=true.

Después de los cambios, la parte requerida del archivo se verá así

GRUB_DEFAULT = 0
GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = verdadero
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "splash silencioso"
GRUB_CMDLINE_LINUX = ""
  • Luego ejecute el sudo update-grubcomando en la terminal y reinicie para ver el resultado.
Anwar
fuente
3
Tenía esta configuración pero aún aparece el menú grub.
1
Con esta configuración, update-grub regresa, 'Advertencia: configurar GRUB_TIMEOUT en un valor distinto de cero cuando GRUB_HIDDEN_TIMEOUT ya está configurado ya no es compatible' y todavía obtengo una cuenta regresiva de 10 segundos mientras se muestra el menú de grub. Establecer GRUB_TIMEOUT en 0 devuelve los mismos resultados también.
zorkerz
@zorkerz ¿qué versión de ubuntu estás usando?
Anwar
Xenial Xerus pero tuvo el mismo comportamiento en 15.10
zorkerz
5

Tuve el mismo problema y ninguno de los consejos aquí funcionó. La única forma era cambiar /boot/grub/grub.cfg de forma manual. En algún momento de este archivo, ¡el tiempo de espera es de 10! Entonces, solo comenta esas líneas

if [ "${timeout}" = 0 ]; then
  set timeout=10
fi

Pero, nunca puede volver a hacer la actualización-grub, de lo contrario volverá al mismo archivo y el tiempo de espera volverá a 10. Guarde el archivo (en vi necesitará forzarlo incluso si es su!). ¡Reinicie la computadora y funcionará bien!

user3680055
fuente
Interesante, ¿por qué no if [ "${timeout}" = 10 ]; then set timeout=0 fi ? ¿O simplemente elimine la declaración if por completo y simplemente salga set timeout=0?
Élder Geek
Esto se coloca allí desde una plantilla que se puede deshabilitar (el sistema operativo prober, como se menciona en la respuesta de Agustin). No necesita editar manualmente grub.cfg.
Neil Traft
esto funcionó para mí en 14.04
Kalamalka Kid
3

si desea eliminar una entrada de arranque simplemente escriba:

sudo update-grub

Si eso no funciona, instale el administrador de inicio, así:

sudo apt-get install startupmanager


con startup-manager puedes

  1. elegir con entrada para iniciar,
  2. elija la resolución y, cuánto tiempo esperar antes de arrancar,
  3. También puede elegir 0 para iniciar automáticamente la entrada de inicio predeterminada
cuchilla19899
fuente
burg pero él está tomando comida
Black Block
disculpa error. se suponía que era sudo update-grub,
edité
El único problema con esto es que la versión de Startup-manager que tengo no muestra muchas opciones - Imgur
Alex Poulos
1
Estoy en 12.04 y probé esto, pero ya decía "verdadero" y todavía aparece. Los únicos otros sistemas operativos que tengo son a prueba de fallos y Memtest, eso es todo. Ya eliminé mi partición de Windows y actualicé grub y el menú aún muestra
Alex Poulos,
al lado de "tiempo de espera en segundos" hay un cuadro con el número 10
renómbrelo
3

Al igual que Agustín , descubrí que mi problema era con el sistema operativo Prober. Dando un paso mejor que su solución, encontré esta esencia que te permitirá tener tus sistemas operativos pero aún así ocultar el menú. Solo necesita descargar esos dos archivos, colocarlos /etc/grub.dy otorgarles los mismos permisos que las otras plantillas en ese directorio.

Si alguna vez desea acceder a su sistema operativo no predeterminado, simplemente mantenga presionada la tecla Mayús mientras se inicia. Eso mostrará el menú.

Neil Traft
fuente
eso definitivamente me parece un error. ¿Alguien lo ha informado?
abre el
Es cierto ... tal vez lo logre en algún momento. No tengo idea si ya hay uno allí.
Neil Traft
3

He encontrado una solución simple al problema.

  echo "
  set timeout_style=hidden
  set timeout=2" | sudo tee --append /etc/grub.d/40_custom 

Y actualizar grub. Sobreescribirá la configuración de tiempo de espera en grub.cfg, por lo que no importa lo que tenga en / etc / default / grub. Así que tengo un menú oculto que se puede invocar por turno durante 2 segundos.

Anton Lavrenov
fuente
Este enfoque funcionó para mí (grub 2.02 ~ beta3-4ubuntu7 instalado por Ubuntu 17.10) cuando ninguna de las otras soluciones propuestas en esta página funcionó (es realmente mala suerte que haya probado esto por última vez: /). ¡Gracias!
pchaigno
2

Agregue la siguiente línea a /etc/default/grub:

GRUB_FORCE_HIDDEN_MENU="true"
Peque
fuente
2

He visto a mucha gente decir que las respuestas sugeridas no funcionan para ellos. Probé varias opciones y esta funcionó para mí :

Edite /etc/grub.d/00_header y busque:

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

Cámbialo a ...

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

Y ejecuta update-grub.

Scott Coates
fuente
2

para todos los que tienen salpicado de palabras en la línea de cmd, cualquier cosa que no sea la codificación 0 para el tiempo de espera no funcionará ,,

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Trate de eliminar las salpicaduras de palabras de la segunda última línea, actualice y reinicie, listo, sin menú :)

hth, krex

Kresimir Pendic
fuente
2

esto me llevó un tiempo, pero pagado fuera de él era una mezcla de mi propia excavación y respuestas anteriores asegúrese primero de que /etc/default/gruby /usr/grub/default/grubson los mismos. luego se ejecutan gksu gedit /etc/grub.d/30_os-probercerca de la parte superior son las dos líneas que queremos, pero para encontrarlas busque styke y cambie esa línea a oculta, luego busque una línea de tiempo de espera, debería ser como si estuviera timeout = 0configurado en 10, elimine esa parte desde el final del archivo hasta asegúrese de elimina el final del archivo o está atornillado y su configuración de grub debería registrar algo como esto, esto es mío solo, por ejemplo:

establece el arranque predeterminado en Windows 8.1 pro

GRUB_DEFAULT="Windows 8 (loader) (on /dev/sda1)"

establece una ventana de cinco segundos para presionar shift para que pueda arrancar en Ubuntu

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

Solución principal de error por si acaso

GRUB_TIMEOUT=0

establece el estilo en oculto

GRUB_TIMEOUT_STYLE=hidden

cosas predeterminadas de Ubuntu

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
Darian
fuente
1
  • Configurar grub vía sudo nano /etc/default/grub
  • Escriba fin del archivo:
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • Guardar cambios CTRL+S
  • Salir CTRL+X
  • Actualizar menú de grub sudo update-grub
Yedhrab
fuente
0

¡Intente esto bajo su propio riesgo y solo como último recurso!

Intenté editar /etc/default/gruby ejecutar sudo update-grubsin resultados.

Terminé la edición /boot/grub/grub.cfga mano, específicamente,

...
### END /etc/grub.d/00_header ###

set timeout=0
saved_entry="Ubuntu"
save_env saved_entry

### BEGIN /etc/grub.d/05_debian_theme ###
...
Epigenio
fuente
-1
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR="lsb_release -i -s 2> /dev/null || echo Debian"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Set this if you hide grubmenu at boot! hidden-timeout has to be 0-10
# NOT recommend with dual-boot systems
# Type ESC/ENTER at boot to make grub-menu visible again! 
# in this case hidden-timeout has to be 3-10
GRUB_DISABLE_OS_PROBER=true

resuelve el problema! s.grub2 @ubuntuusers! ;-)

¡También es posible hacer que grub-menu sea visible nuevamente durante el arranque!

¡IMPORTANTE si tiene un bloqueo y desea arrancar un kernel antiguo (y estable)!

(Probado con Linux Mint 17.3 Rosa, que se basa en Ubuntu 14.04)

chalee
fuente
44
Por favor, no repita las respuestas anteriores .
David Foerster