Se mai è successo a te, non impazzire! È davvero molto facile da risolvere. Il bootloader Grub 2 ha strumenti speciali per la scansione dei dischi rigidi installati sul computer per i sistemi operativi avviabili installati sui tuoi dischi rigidi.
In questo articolo, ti mostrerò come risolvere i problemi sopra indicati e usare Grub2-Mkconfig strumento per risolverlo. Userò Debian 9 Stretch per la dimostrazione, ma dovrebbe funzionare su qualsiasi moderna distribuzione Linux con Grub 2 installato. Iniziamo.
Grub2-Mkconfig è uno strumento davvero semplice. Tutto ciò che fa è scansionare i dischi rigidi del computer per i sistemi operativi avviabili installati (inclusi finestra, Mac OS e qualsiasi distribuzione Linux) e genera un file di configurazione Grub 2. Questo è tutto.
Differenza tra Grub2-MKConfig e Grub-MKConfig:
Anche se Grub 2 è installato sul tuo computer, il Grub2-Mkconfig Il comando potrebbe non essere disponibile nella tua distribuzione Linux preferita. Ma il Grub-Mkconfig Il comando può essere disponibile nella distribuzione Linux. Non c'è differenza tra Grub-Mkconfig E Grub2-Mkconfig Se Grub 2 è installato.
Nota che, se hai installato Grub Legacy, quindi Grub-Mkconfig E Grub2-Mkconfig I comandi non saranno gli stessi.
Puoi controllare quale versione di Grub è installata sul tuo computer Linux con il seguente comando:
$ Sudo Grub2-MKConfig --Version
O
$ Sudo Grub-Mkconfig -Version
Come puoi vedere, sulla mia macchina per allungamento di Debian 9, Grub 2.02 è installato. Inoltre non l'ho fatto Grub2-Mkconfig Comando disponibile su Debian 9 Stretch. È rinominato Grub-Mkconfig. COSÌ Grub-Mkconfig E Grub2-Mkconfig è lo stesso nel mio caso.
Utilizzando Grub2-MKConfig:
IL Grub2-Mkconfig o il Grub-Mkconfig Il comando ha solo un'opzione importante. IL -o o formato lungo il -produzione opzione. Viene utilizzato per dire a Grub 2 in cui il file di configurazione GRUB generato deve essere salvato.
Per impostazione predefinita, Grub2-Mkconfig o il Grub-Mkconfig Il comando stampica il file di configurazione generato a Stdout, che è il terminale del tuo sistema operativo Linux.
Se questo è quello che vuoi, allora corri Grub2-Mkconfig o il Grub-Mkconfig comando come segue:
$ Sudo Grub2-Mkconfig
O
$ Sudo Grub-Mkconfig
Come puoi vedere, la configurazione di Grub 2 generata è stampata sullo schermo del terminale. Questo potrebbe non essere molto utile.
Se lo desideri, puoi esportare la configurazione Grub 2 generata in un file. Il formato del comando è riportato di seguito:
$ sudo grub2 -mkconfig -o file_path
O
$ sudo grub -mkconfig -o file_path
Se preferisci il formato lungo, allora
$ sudo grub2-mkconfig --output file_path
O
$ sudo grub-mkconfig --output file_path
NOTA: Qui, PERCORSO DEL FILE è il percorso del file in cui si desidera salvare la configurazione Grub 2 generata.
Diciamo, vuoi salvare la configurazione Grub 2 generata in un file Grub.cfg Nel tuo utente CASA directory.
Per fare ciò, eseguire il seguente comando:
$ sudo grub2 -mkconfig -o ~/grub.cfg
O
$ sudo grub -mkconfig -o ~/grub.cfg
Come puoi vedere, viene generato un nuovo file di configurazione Grub 2.
Come potete vedere, Grub.cfg Il file viene generato sul mio utente CASA directory.
Come puoi vedere, il contenuto del generato Grub.cfg Il file è lo stesso di prima quando ho stampato l'output nel terminale.
Aggiornamento del file di configurazione di Grub 2 (BIOS):
Se stai utilizzando vecchie schede madri basate sul BIOS, il file di configurazione del bootloader Grub 2 dovrebbe trovarsi nel /boot/grub/grub.cfg file come puoi vedere nello screenshot qui sotto.
NOTA: Su alcune distribuzioni Linux come CentOS 7 o RHEL 7, il file di configurazione di Grub 2 può essere trovato su /boot/grub2/grub.cfg. Se è il caso per te, assicurati di regolare il percorso prima di eseguire il Grub2-Mkconfig O Grub-Mkconfig comando nell'articolo seguente.
Per aggiornare il file di configurazione di Grub 2 sull'installazione Linux basata sul BIOS, eseguire il seguente comando:
$ Sudo Grub2 -MKConfig -o/boot/grub/grub.cfg
O
$ sudo grub -mkconfig -o/boot/grub/grub.cfg
Il file di configurazione di Grub 2 deve essere aggiornato.
Se ti aspetti modifiche, riavvia il tuo computer con il seguente comando:
$ sudo riavvia
Dovresti vedere cosa ti aspetti nel menu Grub subito dopo aver premuto il pulsante di accensione.
Aggiornamento del file di configurazione di Grub 2 (UEFI):
Sulle schede madri basate su UEFI, l'aggiornamento della configurazione di Grub 2 è un po 'più complicato.
Sulle installazioni Linux basate su EFI, il file di configurazione GRUB 2 è in/boot/efi/efi/<Tuo_os>/Grub.cfg
Qui, è il nome della directory in cui il Grub.cfg si trova. Il nome della directory sarà diverso per ogni distribuzione Linux. Il trucco è determinare il nome della directory che viene utilizzata al momento dell'avvio. Se non hai giocato con una distribuzione di Linux diversa, è probabile che ci sarà una sola directory. Altrimenti, ci saranno molte directory da cui dovrai determinare quello attivo.
Eseguire il seguente comando per elencare tutte le directory disponibili in /boot/EFI/EFI directory:
$ sudo ls/boot/efi/efi
Come puoi vedere, sulla mia macchina CentOS 7, ho solo una directory centos/
Ora per aggiornare il file di configurazione di Grub 2, eseguire il comando seguente:
$ sudo grub2 -mkconfig -o/boot/efi/efi/centos/grub.cfg
O
$ sudo grub -mkconfig -o/boot/efi/efi/centos/grub.cfg
Il file di configurazione di Grub 2 deve essere aggiornato.
Ora riavvia il tuo computer e dovresti vedere le voci previste nel menu Grub.
Supponiamo di aver aggiornato il kernel della tua distribuzione preferita di Linux. Dopo l'installazione, hai controllato la versione del tuo kernel e sei sorpreso che non sia stato aggiornato! Oh no!
Bene, non arrabbiarti. IL Grub2-Mkconfig o il Grub-Mkconfig Il comando può anche scansionare il /stivale Directory per verificare i kernel Linux installati e generare una voce di avvio Grub 2 per ciascuno di essi.
I comandi e i processi sono gli stessi di indicati in Aggiornamento del file di configurazione di Grub 2 (BIOS) E Aggiornamento del file di configurazione di Grub 2 (UEFI) sezioni di questo articolo sopra.
Quindi è così che usi Grub2-Mkconfig O Grub-Mkconfig comanda per risolvere molti problemi di avvio su Linux. Grazie per aver letto questo articolo.