Come nascondere il menu di grub in Ubuntu 14.04


8

Ho due sistemi operativi: Windows 8.1 e Ubuntu 14.04. Voglio nascondere il menu di grub. Sto usando grub 2.02 ~ beta2-9. Ho provato le seguenti combinazioni di /etc/default/grub:

  1. \#GRUB_HIDDEN_TIMEOUT=1  
    \#GRUB_HIDDEN_TIMEOUT_QUIET=true  
    GRUB_TIMEOUT=0
    

    Il menu a comparsa è visibile per 10 secondi (se il timeout è impostato per un valore superiore a 0, viene visualizzato correttamente: GRUB_TIMEOUT=5- ritardo di 5 secondi)

  2. GRUB_HIDDEN_TIMEOUT=1  
    GRUB_HIDDEN_TIMEOUT_QUIET=true  
    GRUB_TIMEOUT=0 
    

    menù grub è visibile, ho anche provato GRUB_HIDDEN_TIMEOUT=falsee impostare sia GRUB_TIMEOUTed GRUB_HIDDEN_TIMEOUTa zero e diverse da zero valori

  3. \#GRUB_HIDDEN_TIMEOUT=1  
    \#GRUB_HIDDEN_TIMEOUT_QUIET=true  
    GRUB_TIMEOUT=1  
    GRUB_TIMEOUT_STYLE=hidden
    

    Il menu di grub è visibile per 1 secondo, provato anche GRUB_TIMEOUT_STYLE=countdowncon lo stesso risultato, se GRUB_TIMEOUTimpostato su 0, ritardo di 10 secondi

Dopo ogni modifica, digito update-grube riavvio il computer per vedere i risultati.

Secondo GRUB, la documentazione trovata in un info -f grub -n 'Simple configuration'secondo modo è obsoleta. Il modo giusto è il terzo - usando GRUB_TIMEOUT_STYLE, ma sfortunatamente non funziona. Probabilmente è una specie di bug.


Molte volte, le ricette che trovi online non funzionano bene. In tal caso, consultare la documentazione: gnu.org/software/grub/manual/html_node/…
Espiazione limitata

2
Questo è quello che ho fatto in primo luogo. Non funziona come specificato nella documentazione.
ezpn,

Risposte:


6

Normalmente se avessi un solo sistema operativo in esecuzione l'opzione GRUB_TIMEOUT=0funzionerebbe. Se GRUB 2 os-proberidentifica altri sistemi operativi durante l'esecuzione dello /etc/grub.d/30_os-proberscript, la funzione di timeout del menu nascosto è disabilitata dalle istruzioni condizionali. Ciò disabilita anche la possibilità di utilizzare il Shifttasto per visualizzare il menu durante l'avvio. Gli utenti con più sistemi operativi che desiderano nascondere il menu possono trovare le modifiche degli script su vari forum che consentiranno loro di aggiungere una funzione di timeout nascosta alla sequenza di avvio.

Controlla questa risposta se ti aiuta.


3
Sul tuo link ho trovato una soluzione rapida che nasconde permanentemente il menu di GRUB: anche GRUB_HIDDEN_TIMEOUT=0.0 GRUB_TIMEOUT=0.0se sarebbe meglio se potessi mostrare GRUB semplicemente premendo SHIFT (nella precedente versione di Ubuntu potrei regolarlo manipolando GRUB_TIMEOUT e GRUB_HIDDEN_TIMEOUT), ma è ancora la soluzione migliore che non richiede la scrittura di script personalizzati.
ezpn,

8

Ho trovato una soluzione molto rapida, ma non ho ancora esaminato le conseguenze.

Nel tuo script os_prober per update-grub ci sono alcune linee per bypassare il timeout impostato e per forzare la visualizzazione di un menu di avvio se è stato trovato un altro sistema operativo. Puoi disabilitarlo facilmente impostando la variabile "quick_boot" su 0.

  • In /etc/grub.d/30_os_proberall'inizio della modifica del file

    quick_boot="1" per quick_boot="0"

  • Quindi corri sudo update-grub


1

Ho provato a modificare 30_os_prober, ma si è scoperto che il nome è stato cambiato in 10_os_prober.

A parte questo, la soluzione offerta sopra da Motsah funziona perfettamente per me.

Adesso ho:

GRUB_DEFAULT="0"   
GRUB_HIDDEN_TIMEOUT="1"   
GRUB_HIDDEN_TIMEOUT_QUIET="true"    
GRUB_TIMEOUT="0"

nel mio /etc/default/grub

Cambiare il timeout nascosto su un'impostazione più alta non sembra fare nulla. Avere 0 rende impossibile accedere al menu.

Copiato dall'alto, cambiando in 10_os_prober per completare questo:

In /etc/grub.d/10_os_prober cambio

quick_boot="1"

per

quick_boot="0"

all'inizio del file.

Correre:

sudo update-grub
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.