Domanda Come posso modificare l'ordine di avvio di GRUB?


Ho installato Windows 7 e Ubuntu su una macchina condivisa. Poiché molti sviluppatori non sviluppatori usano Windows, mi piacerebbe 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 on /dev/sda6

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

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

309
2018-01-31 16:18


origine


Domande e risposte simili: askubuntu.com/questions/52963/... - fossfreedom♦
Hai fatto un 'sudo update-grub' dopo aver cambiato il file grub? - Tinellus
Sì, penso di aver dimenticato di farlo, grazie! Cercherò di aggiornare con i risultati. - jeffery_the_wind
kubuntu 14.04 sudo apt-get install kde-config-grub2 quindi nel sistema config goto startdown shutdown - n611x007


risposte:


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

Puoi installarlo da:

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

(Vedi Chiedi la domanda su 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 semplice. Dai un'occhiata a questo se sei interessato. Inoltre, c'è un thread risolto sui forum di Ubuntu, Cambia l'ordine di avvio in GRUB 2 che menziona questo strumento.

Ecco alcuni screenshot:

screen_1

screen_2

screen_3


Alcuni problemi:

Le impostazioni di Grub Customizer possono funzionare solo dall'ultima installazione 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 cerca di seguire la risposta di cui sopra, le modifiche di Grub Customizer non funzioneranno se eseguite dal secondo SO ( 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 sono nella maggior parte dei casi con il sistema più recente installato su una macchina, quindi Grub Customizer deve essere installato e utilizzato da quella Sistema Linux.


278
2018-01-31 17:30



I più graditi :) Gli screenshot provengono dal blogpost che è collegato in alto: P - Nitin Venkatesh
Questo non funziona con l'ultima versione di Ubuntu. Possiamo ricevere un post aggiornato qui? - A T
Penso che la tua risposta sia buona e utile, quindi per favore non fraintendermi. Mentre gli strumenti della GUI sono semplici e intuitivi, nascondono i fatti. La risposta di Marve qui sotto discute i file in uso e come aggiornarli manualmente, fornendo informazioni su come funziona Grub. Quando la GUI fallisce, e lo farà per alcuni, almeno dare un'occhiata alle basi - non sono poi così difficili e la manipolazione manuale sarà probabilmente più facile a lungo termine. - barrypicker
Ho anche avuto problemi con l'uso di questo strumento. Sembra che aggiorni il / etc / default / grub correclty ma poi dice core dump e interrotto. - Mauricio Gracia Gutierrez
Ciò richiede un aggiornamento correlato ai due livelli del menu corrente di grub. - Hannu


È inoltre possibile modificare la voce di avvio predefinita Grub dalla riga di comando senza dover installare alcuno strumento aggiuntivo. Questo non cambierà l'ordine nella lista ma permetterà ad un sistema operativo diverso di avviarsi di default, il che suona come se fosse lo stesso.

Innanzitutto, crea una copia di backup di /etc/default/grub. Nel caso qualcosa vada storto, puoi facilmente tornare alla copia nota:

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

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

sudo vim /etc/default/grub

Trova la linea che contiene

GRUB_DEFAULT=0

e impostarlo

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 leggere:

GRUB_DEFAULT=5

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

menuentry 'Ubuntu' [options] {

Puoi anche scegliere il valore predefinito in base al nome anziché all'indice, ad esempio:

GRUB_DEFAULT='Ubuntu'

se ci fosse un menuentry 'Ubuntu' line on /boot/grub/grub.cfg. Questo potrebbe essere un metodo migliore, in quanto non dipende dall'ordine delle voci, che potrebbero cambiare.

Per utilizzare un kernel nel sottomenu "Versioni Linux precedenti" utilizzare:

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 così come appare /boot/grub/grub.cfg. Per esempio,

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

Quindi crea il menu di grub aggiornato:

sudo update-grub

218
2018-03-07 03:44



Infine ho guardato grub2 genera così tante voci al volo che è davvero difficile capire quale numero utilizzare per una voce. - Joe
L'uso di un indice può essere piuttosto complicato: l'elenco dei sistemi operativi può cambiare dopo un aggiornamento. Ma puoi dare un'occhiata a /boot/grub/grub.cfg e cercare il nome del SO predefinito desiderato. Quindi utilizzare il nome quotato anziché un indice. Esempio: GRUB_DEFAULT="Microsoft Windows XP Professional (on /dev/sda1)" invece di GRUB_DEFAULT=7 - geekQ
Ciò richiede un aggiornamento correlato ai due livelli del menu corrente di grub. - Hannu
Con la versione corrente di Ubuntu 16.04, se si desidera selezionare un kernel specifico per l'avvio, è necessario aggiungere al Advanced options for Ubuntu sottomenu, come questo: GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 4.4.0-34-generic' - Geoff Williams
@BandaMuhammadAlHelal Che tenterà di avviare il settimo elemento della tua lista - è quello che vuoi? Se vuoi il sesto elemento del tuo elenco, usa GRUB_DEFAULT=5. - Nick


Dal sito di tombuntu (articolo di Tom):

GRUB può essere configurato usando /etc/default/grub file. 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

È possibile 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 linea GRUB_DEFAULT=0 significa che GRUB selezionerà il primo menu   oggetto da avviare. Cambia questo a 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 creato consente di impostare il valore predefinito 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.

Correre 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

35
2018-06-11 17:04



Questa risposta è presa quasi letteralmente da tombuntu.com/index.php/2011/09/25/.... Si prega di dare credito dove è dovuto il credito. - James McMahon
Questa risposta non sembra cambiare l'ordine degli elementi di avvio. - Sparhawk
Sto usando Linux Mint Debian Edition. Non avevo un / etc / default / grub, ma ho trovato che il valore di GRUB_DEFAULT da modificare era invece in /etc/grub.d/00_header. Dopo aver modificato GRUB_DEFAULT in 00_header con il nome di voce di avvio desiderato, ho semplicemente eseguito "sudo update-grub" e voilà, successo. - Fuzzy Analysis
Ho visto questi stessi comandi in tipsonubuntu.com/2016/07/20/grub2-boot-order-ubuntu-16-04 Mi sono reso conto che questi comandi funzioneranno solo se sono stati emessi dal sistema in ordine di avvio 0 prima. - Sun Bear


Ho provato quanto segue e ho ottenuto buoni risultati.

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

genere sudo gksu nautilus e premere Invio. Inserisci la tua password utente.

Passare 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 viene caricato.

In bocca al lupo


-2
2017-09-19 20:08



come puoi vedere all'inizio del file, dice che non dovresti farlo. modifica invece /etc/default/grub e poi corri update-grub. - sazary
e non raccomanderei nemmeno a gksu nautilus. Da qui è facile far cadere una bomba nel tuo sistema. - sylvainulg
controlla questo post: psychocats.net/ubuntu/bootmenu - tqjustc
Per qualche motivo questa risposta è mostrata come "risposta automatica" in google quando si cerca: "grub change boot order". - lepe
@lepe, non ti preoccupare, per me l'impostazione predefinita è linuxandubuntu.com/home/... - vladkras


Apri una finestra di terminale (Ctrl+alt+T), o premere alt+F2.

genere gksu nautilus e premere accedere.

Ciò aprirà il navigatore di file Nautilus con il permesso di modificare i file di proprietà di root.

Passare 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 lo fai, come se lo facessi male, non sarai più in grado di fare il boot. 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 a begin ... e finisce 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. Così Usa il tuo cervello per evitare di fare un errore.


-5
2017-07-05 18:01



Non devi correre sudo update-grub ad un certo punto? - Eliah Kagan
/boot/grub/grub.cfg viene sovrascritto in ogni pacchetto installato / aggiornato che attiva un aggiornamento di Grub, invocando efficacemente update-grub. E questo genera un nuovo grub.cfg. Pertanto, la configurazione di Grub viene eseguita nei file in /etc directory come spiegato dalle altre risposte, per assicurarsi che sia persistente. - gertvdijk