L’utilità della riga di comando di Linux efibootmgr è molto utile quando si tratta di gestire il menu di avvio .
Questo tutorial mostra come utilizzare efibootmgr con 5 esempi. Si presume che tu abbia installato Linux in modalità UEFI.
È possibile installare l’utilità della riga di comando efibootmgr con i seguenti comandi.
Debian / Ubuntu / Linux Mint
sudo apt install efibootmgr
Fedora, CentOS, RedHat,
sudo dnf installa efibootmgr
SuSE
sudo zypper installa efibootmgr
Arch Linux / Manjaro
sudo pacman -S efibootmgr
1 Visualizzazione delle impostazioni correnti
Esegui semplicemente il seguente comando. In alcune distribuzioni Linux come Debian, è necessario eseguirlo con sudo
privilegi.
efibootmgr
Questo comando consente di visualizzare la voce di avvio predefinita (BootCurrent), l’ordine di avvio e tutte le voci di avvio. Ogni voce di avvio è identificata da un numero di avvio in esadecimale. L’asterisco (*) significa che la voce di avvio è attiva.
Puoi anche aggiungere -v
un’opzione per mostrare informazioni dettagliate.
efibootmgr -v
È possibile visualizzare il numero della partizione di sistema EFI, il tipo di tabella delle partizioni (GPT), l’UUID della partizione di sistema EFI e il file del caricatore di avvio.
Lo screenshot sopra mostra che la mia partizione di sistema EFI (ESP) si trova sulla settima partizione del mio disco rigido (/ dev / sda7). È una tabella delle partizioni GPT.
2. Modifica dell’ordine di avvio
Innanzitutto, copia l’ordine di avvio corrente. Ad esempio, il mio ordine di avvio è:
0013,0012,0014,0000,0001,0002,0003,000D, 0011,0007,0008,0009,000A, 000B, 000C, 000E
Quindi digita il seguente comando
sudo efibootmgr -o
E aggiungi l’ordine di avvio al comando precedente.
sudo efibootmgr -o 0013 , 0012 , 0014,0000,0001,0002,0003,000D, 0011,0007,0008,0009,000A, 000B, 000C, 000E
Diciamo che vuoi 0012
essere la prima voce di avvio. Tutto quello che devi fare è spostarlo a sinistra di 0013
e premere Invio.
sudo efibootmgr -o 0012 , 0013 , 0014,0000,0001,0002,0003,000D, 0011,0007,0008,0009,000A, 000B, 000C, 000E
3. Aggiunta di una voce di avvio
Se hai installato più distribuzioni Linux sul tuo computer, ma una delle distribuzioni Linux non ha una voce di avvio UEFI, puoi aggiungerla manualmente.
Avvia nella distribuzione Linux che non ha una voce di avvio UFEI. Quindi assicurati che abbia la versione EFI del boot loader GRUB installata.
Debian / Ubuntu / Linux Mint
sudo apt install grub-efi
Fedora
sudo dnf installa grub2-efi-modules
Quindi montare la partizione di sistema EFI (ESP) nella /boot/efi/
directory. In questo esempio, /dev/sda7
è l’ESP.
sudo mount / dev / sda7 / boot / efi /
Quindi installa il boot loader Grub su ESP.
sudo grub-install / dev / sda --target = x86_64-efi --efi-directory = / boot / efi /
x86_64-efi
significa che installeremo Grub per il firmware UEFI. L’obiettivo predefinito è i386-pc
, che è per il firmware BIOS tradizionale.
Ora dovresti vedere una nuova voce nel menu di avvio UEFI con il bootmgr
comando. .efi
Dietro le quinte, il programma di installazione di Grub installa prima un file booloader nella /boot/efi/EFI/<label>/
directory. Di solito si chiama grubx64.efi. Quindi esegue il seguente comando per aggiungere una nuova voce nel menu di avvio UEFI.
efibootmgr -c -d / dev / sda -p 7 -L <etichetta> -l \ EFI \ <etichetta> \ grubx64.efi
La voce appena aggiunta sarà la prima in ordine di avvio.
4. Eliminazione della voce di avvio
Supponiamo che tu abbia installato più distribuzioni Linux su un disco rigido in modo da avere più voci di avvio proprio come lo screenshot sopra. E ora hai eliminato una distribuzione Linux ma la voce di avvio è ancora lì. Per rimuovere la rispettiva voce di avvio, eseguire:
sudo efibootmgr -b <bootnum> -B
Per esempio,
sudo efibootmgr -b 0014 -B
-b
opzione specifica il numero di avvio. -B
opzione elimina quel numero di avvio.
5. Impostazione di una voce di avvio attiva o inattiva
Una voce di avvio seguita da un asterisco indica che è attivo. Altrimenti è inattivo. Per impostare una voce di avvio attiva, eseguire:
sudo efibootmgr -b <bootnum> -a
Per impostare una voce di avvio inattiva, eseguire:
sudo efibootmgr -b <bootnum> -A