Come nascondo il menu di GRUB visualizzato all'inizio del boot?


42

Ho interrotto il doppio avvio e non voglio più scegliere il sistema operativo. Voglio avviare Ubuntu 12.04 direttamente senza vedere il menu di GRUB.

Come posso raggiungerlo?


Se hai interrotto il doppio avvio, probabilmente hai smesso di usare l'altro sistema operativo. Perché non riesci a rimuovere l'altro sistema operativo in modo che Ubuntu possa avviarsi normalmente.
karthick87


se una di queste risposte "ha risposto" alla tua domanda, per favore accettane una :)
blade19899

@ David6: non vedo come nessuno dei due sia duplicato di questa domanda. Penso che si tratti di nascondere il menu di grub durante il timeout.
oKtosiTe

Siamo spiacenti, il secondo collegamento doveva essere: askubuntu.com/questions/66070/… Questo include come: nascondere il menu Grub2 e utilizzare l'opzione di menu predefinita
david6

Risposte:


33

Puoi semplicemente modificare le impostazioni di grub.

digitare il terminale

sudo -H gedit /etc/default/grub

devi cambiare questo

Cambia GRUB_HIDDEN_TIMEOUT_QUIET=falsein

GRUB_HIDDEN_TIMEOUT_QUIET=true

Salva il file ed esci

genere sudo update-grub

Se non ottieni il risultato desiderato, vedi questo errore .


7
è attualmente cambiato in True ma vedo ancora il menu di grub ...
Alex Poulos

Sono il 12.04 e ho provato questo, ma ha già detto "vero" e si presenta ancora. Gli unici altri sistemi operativi che ho sono il fail-safe e Memtest - tutto qui. Ho già cancellato la mia partizione di Windows e aggiornato grub e il menu mostra ancora.
Alex Poulos,

@AlexPoulos guarda questo link
hingev

2
Ha funzionato per me modificando il timeout su 0 e quindi rendendolo silenzioso. Grazie
king_julien

23

Ho risolto questo problema disabilitando OS Prober. L'ho fatto perché nella /boot/grub/grub.cfgparte generata dal modello /etc/grub.d/30_os-proberc'era una sostituzione di "timeout" su 10 e "stile" sul menu.

Modifica /etc/default/grube aggiungi questa riga:

GRUB_DISABLE_OS_PROBER=true

Spero che lo trovi utile!

A proposito, il mio full / etc / default / grub è:

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

Buona codifica


2
che ha funzionato per me, ma ha fatto sparire tutte le altre opzioni di avvio, ma quella predefinita ...
opensas

1
@opensas Se il menu di selezione non viene visualizzato, come fai a sapere quali opzioni di avvio "compaiono" su di esso? Se si desidera disabilitare il menu, perché si desiderano opzioni di avvio non predefinite?
Kyle Strand,

se si esclude la parte "GRUB_TIMEOUT_STYLE = hidden", il conto alla rovescia è visibile, ma nient'altro, a meno che non venga interrotto. Ciò ti consente di accedere al menu e modificare le impostazioni di avvio, anche se lo rende molto meno evidente.
scalpellino

Se si desidera poter vedere il menu di avvio dopo aver tenuto premuto il tasto Maiusc, GRUB_TIMEOUT deve essere impostato su maggiore di zero (ad esempio, GRUB_TIMEOUT = 5). Altrimenti, altre opzioni di avvio (ad esempio, Windows) non possono essere attivate se necessario.
user3804598

Su Ubuntu 18.04 LTS, GRUB_RECORDFAIL_TIMEOUT=0è l' unica modifica a /etc/default/grubeliminare il timeout di 30 secondi (e il menu del bootloader GRUB del tutto), che sembra essere un bug: bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/ commenti / 4 . Inoltre, sudo update-grubdeve essere eseguito affinché le modifiche abbiano effetto, che non è menzionato nella risposta. Si noti che l'impostazione di questo valore su 0non è consigliata (consultare il link sopra citato) a meno che la macchina non sia una VM di sviluppo o simile.
Ben Johnson,

11

Ho provato tutti quei suggerimenti che non funzionavano, alla fine ho ridotto il tempo di timeout a zero come segue:

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=""

correre sudo update-grubdopo aver cambiato i valori
niksmac

Stessa cosa per me. Ho eseguito "update-grub" - non ha funzionato.
Robin Winslow,

1
Questo è ciò che mio / etc / default / grub ma ho ancora un conto alla rovescia di 10 secondi con il menu grub visualizzato.
zorkerz,

8

È necessario modificare il file in /etc/default/grubper impedire la visualizzazione del menu di grub.

Per impostazione predefinita, le voci in tali file sono simili alle seguenti.

GRUB_DEFAULT = 0
# GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = false
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || eco Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "splash tranquillo"
GRUB_CMDLINE_LINUX = ""
  • Rimuovere il #segno dalla seconda riga e
  • Cambia la linea GRUB_HIDDEN_TIMEOUT_QUIET=falsein GRUB_HIDDEN_TIMEOUT_QUIET=true.

Dopo le modifiche, la parte richiesta del file sarà simile a questa

GRUB_DEFAULT = 0
GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = true
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || eco Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "splash tranquillo"
GRUB_CMDLINE_LINUX = ""
  • Quindi eseguire il sudo update-grubcomando nel terminale e riavviare per vedere il risultato.

3
Ho avuto questa configurazione ma appare ancora il menu di grub.

1
Con questa impostazione update-grub ritorna, "Avvertenza: l'impostazione di GRUB_TIMEOUT su un valore diverso da zero quando GRUB_HIDDEN_TIMEOUT è impostato non è più supportata" e ricevo ancora un conto alla rovescia di 10 secondi mentre visualizzo il menu Grub. L'impostazione di GRUB_TIMEOUT su 0 restituisce anche gli stessi risultati.
zorkerz,

@zorkerz quale versione di ubuntu stai usando?
Anwar,

Xenial Xerus ha avuto lo stesso comportamento il 15.10
zorkerz il

5

Ho avuto lo stesso problema e nessuno dei suggerimenti qui ha funzionato! L'unico modo era cambiare /boot/grub/grub.cfg manualmente. Ad un certo punto di questo file, il timeout passa a 10! Quindi, basta commentare quelle righe

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

Ma non puoi mai più aggiornare-grub, altrimenti tornerà allo stesso file e il timeout tornerà a 10! Salva il file (in vi dovrai forzarlo anche se sei su!). Riavvia il computer e funzionerà perfettamente!


Interessante, perché no if [ "${timeout}" = 10 ]; then set timeout=0 fi ? O semplicemente rimuovere completamente l'istruzione if e lasciarla set timeout=0?
Elder Geek,

Questo è messo lì da un modello che può essere disabilitato (il prober OS, come menzionato nella risposta di Agustin). Non è necessario modificare manualmente grub.cfg.
Neil Traft,

questo ha funzionato per me nel 14.04
Kalamalka Kid,

3

se si desidera rimuovere una voce di avvio, digitare:

sudo update-grub

Se non funziona, installa il gestore di avvio, in questo modo:

sudo apt-get install startupmanager


con startup-manager puoi

  1. scegli con voce per avviare,
  2. scegli la risoluzione e, quanto tempo attendere prima dell'avvio,
  3. puoi anche scegliere 0 per l'avvio automatico della voce di avvio predefinita

burg ma sta prendendo in giro grub
Black Block

scusa errore di battitura. doveva essere sudo update-grub, ho modificato la risposta
blade19899

L'unico problema è che la versione di Startup-manager che ho non mostra molte opzioni - Imgur
Alex Poulos

1
Sono il 12.04 e ho provato questo, ma ha già detto "vero" e si presenta ancora. Gli unici altri sistemi operativi che ho sono il fail-safe e Memtest - tutto qui. Ho già cancellato la mia partizione di Windows e aggiornato grub e il menu mostra ancora
Alex Poulos

accanto a "timeout in secondi" c'è una casella con il numero 10 che lo rinomina in numero 0
blade19899

3

Come Agustin , ho scoperto che il mio problema era con OS Prober. Facendo un passo in più rispetto alla sua soluzione, ho trovato questa sostanza che ti consentirà di avere i tuoi sistemi operativi ma nasconderà comunque il menu. Devi solo scaricare quei due file, metterli in /etc/grub.d, e dare loro le stesse autorizzazioni degli altri modelli in quella directory.

Se vuoi mai accedere al tuo sistema operativo non predefinito, tieni premuto MAIUSC durante l'avvio. Questo mostrerà il menu.


che sicuramente mi sembra un bug. qualcuno l'ha segnalato ???
apre il

Vero ... forse ci proverò ad un certo punto. Non ho idea se ce n'è già uno lì.
Neil Traft,

3

Ho trovato una soluzione semplice al problema.

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

E aggiorna grub. Sovrascriverà le impostazioni di timeout in grub.cfg, quindi non importa cosa hai in / etc / default / grub. Quindi ho un menu nascosto che può essere invocato a turno per 2 secondi.


Questo approccio ha funzionato per me (grub 2.02 ~ beta3-4ubuntu7 installato da Ubuntu 17.10) quando nessuna delle altre soluzioni proposte in questa pagina ha funzionato (è davvero sfortunata che abbia provato quest'ultima: /). Grazie!
pchaigno,

2

Aggiungi la seguente riga a /etc/default/grub:

GRUB_FORCE_HIDDEN_MENU="true"

2

Ho visto molte persone dire che le risposte suggerite non funzionano per loro. Ho provato diverse opzioni e questa ha funzionato per me :

Modifica /etc/grub.d/00_header e trova:

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

Modificalo in ...

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

Ed esegui update-grub.


2

per tutti voi che hanno la parola splash nella riga cmd qualsiasi cosa tranne hardcoding 0 per timeout non funzionerà ,,

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=""

Prova a rimuovere la parola splash dalla seconda ultima riga, aggiorna e riavvia ,, voilà, nessun menu :)

hth, krex


2

questo mi ha richiesto un po 'di tempo, ma è stato ripagato che era un mix del mio stesso scavo e le risposte sopra prima assicurati che siano le tue /etc/default/grube /usr/grub/default/gruble stesse. poi corri gksu gedit /etc/grub.d/30_os-probervicino alla cima sono le due linee che vogliamo ma per trovarle cerca lo styke e cambia quella linea in nascosta quindi cerca una linea di timeout dovrebbe essere come se timeout = 0impostato su 10 cancella quella parte dall'if alla fine del file assicurati elimini la fine del file o il tuo avvitato e la tua configurazione di grub dovrebbe registrare qualcosa del genere questo è mio solo per esempio:

imposta l'avvio predefinito su Windows 8.1 Pro

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

imposta una finestra di cinque secondi per premere Maiusc in modo da poter avviare Ubuntu

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

correzione principale per errore per ogni evenienza

GRUB_TIMEOUT=0

imposta lo stile su nascosto

GRUB_TIMEOUT_STYLE=hidden

roba predefinita di Ubuntu

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

1
  • Configurare grub tramite sudo nano /etc/default/grub
  • Digitare fine del file:
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • Salva modifiche CTRL+S
  • Esci CTRL+X
  • Aggiorna il menu di grub sudo update-grub

0

Tentare questo a proprio rischio e solo come ultima risorsa!

Ho provato a modificarlo /etc/default/grube eseguirlo sudo update-grubsenza risultati.

Termina la modifica /boot/grub/grub.cfga mano, in particolare,

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

set timeout=0
saved_entry="Ubuntu"
save_env saved_entry

### BEGIN /etc/grub.d/05_debian_theme ###
...

-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

risolve il problema! s.grub2 @ubuntuusers! ;-)

Inoltre è possibile rendere di nuovo visibile il menu di grub durante l'avvio!

IMPORTANTE se si verifica un arresto anomalo e si desidera avviare un kernel più vecchio (e stabile)!

(Testato con Linux Mint 17.3 Rosa che si basa su Ubuntu 14.04)


4
Per favore non ripetere le risposte precedenti .
David Foerster,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.