Come cambio l'ordine di avvio di GRUB?

307

Ho installato Windows 7 e Ubuntu su una macchina condivisa. Poiché molti non sviluppatori usano Windows, vorrei cambiare l'ordine di avvio per renderlo più semplice.

Attualmente l'ordine di avvio ha il seguente aspetto:

  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (avvio sicuro)
  • Test di memoria
  • Test di memoria
  • Windows 7 su /dev/sda6

Come cambio l'ordine predefinito in modo che Windows 7 sia in cima alla lista?

  • Windows 7 su /dev/sda6
  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (avvio sicuro)
  • Test di memoria
  • Test di memoria
posta chrisjlee 31.01.2012 - 17:18

5 risposte

278

Puoi utilizzare un'applicazione GUI di facile utilizzo chiamata Grub Customizer per rendere la tua vita un po 'più semplice. Come suggerisce il nome, puoi fare molto più che riordinare semplicemente le voci del menu di GRUB con esso.

Puoi installarlo con:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

(Vedi Domanda Ubuntu I PPA sono sicuri da aggiungere al mio sistema e quali sono alcune "bandiere rosse" a cui prestare attenzione? ).

C'è un How-To Geek articolo a riguardo, Come configurare il menu di avvio di GRUB 2 per Linux in modo facile . Dai un'occhiata a questo se sei interessato. Inoltre, c'è un thread risolto sui forum di Ubuntu, Modifica dell'ordine di avvio in GRUB 2 che menziona questo strumento.

Ecco alcuni screenshot:

Risoluzione dei problemi:

Le impostazioni di Grub Customizer possono funzionare solo dall'ultima installazione di Linux / Ubuntu, quella che ha installato Grub.

Ad esempio, se qualcuno ha installato due SO (Windows e Ubuntu), quindi installa un terzo SO (Manjaro, ecc.) e poi prova a seguire la risposta di cui sopra, le modifiche di Grub Customizer non funzioneranno se fatte dal secondo sistema operativo (Ubuntu, nell'esempio). Il programma deve essere installato nel sistema operativo, poiché sembra che Grub Customizer possa modificare solo i file Grub creati dall'installazione del sistema su cui è installato.

I file che determinano il menu di avvio di Grub provengono nella maggior parte dei casi dal sistema più recente installato su una macchina, quindi Grub Customizer deve essere installato e utilizzato dal sistema di Linux.

    
risposta data Nitin Venkatesh 31.01.2012 - 18:30
217

Puoi anche modificare la voce di avvio predefinita di grub dalla riga di comando senza dover installare alcun altro strumento. Questo non cambierà l'ordine nella lista ma permetterà ad un SO diverso di avviarsi di default, il che suona come se fosse lo stesso.

Per prima cosa, crea una copia di backup di /etc/default/grub . Nel caso in cui qualcosa vada storto, puoi facilmente tornare alla copia nota:

sudo cp /etc/default/grub /etc/default/grub.bak

Quindi modifica il file utilizzando vim o l'editor di testo di tua scelta:

sudo vim /etc/default/grub

Trova la linea che contiene

GRUB_DEFAULT=0

e impostalo su

GRUB_DEFAULT=x

dove x è l'indice della voce di menu grub a cui si desidera avviare per impostazione predefinita. Si noti che le voci del menu sono a zero indice. Ciò significa che il primo elemento nell'elenco è 0 e che il sesto elemento è in realtà 5 . Quindi, per avviare il sesto elemento nell'elenco, la riga dovrebbe:

GRUB_DEFAULT=5

Se hai dimenticato l'ordine degli articoli, dai un'occhiata a /boot/grub/grub.cfg . Ogni voce di menu è specificata da una riga di tipo:

menuentry 'Ubuntu' [options] {

Puoi anche scegliere l'impostazione predefinita in base al nome anziché all'indice, ad esempio:

GRUB_DEFAULT='Ubuntu'

se c'era una riga menuentry 'Ubuntu' su /boot/grub/grub.cfg . Questo potrebbe essere un metodo migliore, in quanto non dipende dall'ordine delle voci, che potrebbero cambiare.

Per usare un kernel nel sottomenu "Versioni Linux precedenti" usa:

GRUB_DEFAULT="Previous Linux Versions>x"

(assicurati di includere le citazioni), dove x è l'indice del vecchio kernel nel sottomenu, o il nome del kernel come appare in /boot/grub/grub.cfg . Ad esempio,

GRUB_DEFAULT="Previous Linux Versions>4.13.0-43-generic"

Quindi crea il menu di grub aggiornato:

sudo update-grub
    
risposta data dcharles 07.03.2012 - 04:44
35

Dal sito di tombuntu (articolo di Tom ):

  

GRUB può essere configurato utilizzando il file /etc/default/grub . Prima di te   apportare eventuali modifiche ad esso, potrebbe essere una buona idea eseguirne il backup   creando una copia:

sudo cp /etc/default/grub /etc/default/grub.bak
     

Puoi ripristinare la copia del backup sull'originale:

sudo cp /etc/default/grub.bak /etc/default/grub
     

Apri il file usando l'editor di testo con i privilegi di root:

gksu gedit /etc/default/grub
     

La riga GRUB_DEFAULT=0 significa che GRUB selezionerà il primo menu   oggetto da avviare. Cambia questo in GRUB_DEFAULT=saved . Questo cambiamento lo farà   semplificare la modifica dell'elemento predefinito in un secondo momento.

     

Salva e chiudi il file. Esegui questo comando per applicare le modifiche a   Configurazione di GRUB:

sudo update-grub
     

La modifica alla configurazione che abbiamo apportato consente l'impostazione predefinita di grub e   comandi di riavvio di grub da utilizzare in qualsiasi momento. Questi ti permettono di cambiare   l'elemento di avvio predefinito in modo permanente o solo per il prossimo avvio,   rispettivamente.

     

Esegui grub-set-default o grub-reboot (con sudo ) con il numero   della voce di menu da avviare (il primo elemento è 0). Questo comando lo farà   cambia l'impostazione predefinita sul secondo elemento:

sudo grub-set-default 1
    
risposta data silenTK 11.06.2012 - 19:04
-2

Ho provato quanto segue e ho ottenuto buoni risultati.

Apri una finestra di terminale ( Ctrl + Alt + T ),

Digita sudo gksu nautilus e premi Invio. Inserisci la tua password utente.

Vai al file /boot/grub/grub.cfg . Copia e incolla il file nella stessa directory, dovrebbe creare una copia del file grub.cfg a scopo di backup. Quindi fai doppio clic su grub.cfg per aprire il file in un editor di testo.

Nel file troverai la linea ( set default="0" ). Modifica lo 0 al numero di riga in Grub che vuoi caricare. La mia era la sesta linea, quindi ho usato 5, in quanto la prima riga è considerata 0. Salva il file. Riavvia il pc e se hai scelto la linea corretta sarà quella evidenziata quando Grub verrà caricato.

Buona fortuna

    
risposta data Outkast 19.09.2012 - 22:08
-5

Apri una finestra di terminale ( Ctrl + Alt + T ), oppure premi Alt + F2 .

Digita gksu nautilus e premi Invio .

Questo aprirà il navigatore di file Nautilus con il permesso di cambiare i file di proprietà di root.

Vai al file /boot/grub/grub.cfg e fai doppio clic per aprire il file in un editor di testo.

Taglia, sposta e incolla le sezioni in quel file che appartiene a diversi sistemi operativi. Devi essere molto attento quando fai questo, come se lo facessi male, quindi non sarai più in grado di avviarsi. L'avvio di Windows può sempre essere riparato con gli strumenti da un disco di installazione di Windows ( FIXMBR ), che sovrascrive GRUB-MBR con un tipico Windows-MBR.

L'ho provato da Ubuntu 9.04 a 12.04 e ha funzionato bene ogni volta.

Ma ho solo provato a spostare la sezione di avvio di Windows in cima all'elenco per renderlo predefinito.

Se la mia memoria è corretta, ogni sezione del menu di avvio nel file inizia con begin ... e termina con un ... end . E si estende su più righe di testo.

Il testo in quel file è diventato un po 'più complicato e non sembra lo stesso nell'ultima versione di Ubuntu come nelle versioni precedenti. Quindi usa il tuo cervello per evitare di commettere errori.

    
risposta data Curt Jonsson 05.07.2012 - 20:01

Leggi altre domande sui tag