Impossibile trovare la directory EFI: problema con grub-install


14

Stavo cercando di salvare GRUB in Linux. Sono stato in grado di accedere al sistema operativo seguendo questo tutorial:

https://www.lisenet.com/2014/grub2-rescue-mode-error-unknown-filesystem/

Devo aggiornare GRUB per risolvere il problema. Tuttavia, quando corro grub-install, ricevo un errore:

$ grub-install /dev/sda
grub-install: error: cannot find EFI directory.

Il mio file system contiene sda4, sda5e , rispettivamente , sda6per il sistema EFI, Linux swap e il file system Linux.

Non ho molta esperienza con mount o altri comandi.

Risposte:


11

Quando si esegue grub-install per impostazione predefinita, si presuppone che il sistema EFI sia montato come / boot / efi

Dipende dalla tua distribuzione in cui è installato il sistema EFI e da alcune distribuzioni non è montato dopo l'avvio.

Prima controlla se / boot / efi è montato con

mount | grep /boot/efi

Se il problema persiste, provare prima a vedere se è montato altrove.

mount | grep /dev/[efi device]

Se nessuno di questi lavori fa:

mount /dev/[efi device] /mnt

Ora esegui:

grub-install --efi-directory=[efi dir]
grub-mkconfig -o /boot/grub/grub.cfg

dove [efi dir] è / boot / efi o / mnt e [efi device] è il dispositivo con la partizione di sistema EFI. Se non sai usa il comandolsblk -o NAME,PARTTYPE,MOUNTPOINT | grep -i "C12A7328-F81F-11D2-BA4B-00A0C93EC93B"


2
Grazie, nel grub-install --efi-directory=/boot/EFImentre mi chroot /mnt.
Krishnakant,

Forse stupido Q ma non ho un dir EFI. Dove ne trovo uno? Voglio dire che dovrebbe contenere file, quale comando può ricrearlo?
Lennart Rolland,

@LennartRolland Se si dispone di un sistema compatibile UEFI, l'unità di sistema sarà partizionata GPT e contiene una "partizione di sistema UEFI". di solito la prima partizione e sarà del tipo EF00. Molte distribuzioni lo monteranno di default come / boot / efi per consentire, tra l'altro, al boot loader GRUB di aggiornare i suoi file. Altrimenti dovrai montarlo tu stesso e aggiungerlo a fstab. Potresti anche avere un sistema UEFI ma che sta usando la modalità legacy, il che significa che le tue partizioni saranno di tipo msdos e non avrai un / boot / efi. Esistono configurazioni più strane ma che coprono la maggior parte di esse.
jdwolf,

Le tue istruzioni se EFI non è montato sono errate. Vedi la mia modifica. mount | grep /dev/sda6non funziona Se EFI non è montato, è necessario controllare il tipo di partizioni.
giusti,

@giusti Probabilmente è meglio non fare riferimenti specifici al nome del dispositivo.
jdwolf,

1

La modalità di salvataggio di Grub può essere considerata come

set root=(hd0,gpt6)
set prefix=(hd0,gpt6)/boot/grub
insmod normal
normal

Una volta effettuato l'accesso, entra sudo update-grub && sudo grub-install /dev/sda.


Il grub-installnon dovrebbe essere fatto prima del update-grub?
danger89,
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.