Pokoušel jsem se zachránit GRUB v Linuxu. Po tomto výukovém programu jsem se mohl v OS přihlásit:

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

K vyřešení problému musím upgradovat GRUB. Když však spustím grub-install, zobrazí se chyba:

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

Můj souborový systém obsahuje sda4, sda5 a sda6 pro systém EFI, Linux swap a Linux souborový systém.

Nemám příliš zkušeností s používáním příkazu mount nebo jiných příkazů.

Odpověď

Když spustíte grub-install ve výchozím nastavení předpokládá, že systém EFI je připojen jako / boot / efi

záleží na vaší distribuci kde je připojen systém EFI a na některých distribucích není připojen po spuštění.

Nejprve zkontrolujte, zda je / boot / efi připojen pomocí

mount | grep /boot/efi 

Pokud to nefunguje, nejprve zkuste následující, abyste zjistili, zda je připojeno jinde.

mount | grep /dev/[efi device] 

Pokud ani jedna z těchto funkcí nefunguje:

mount /dev/[efi device] /mnt 

Nyní spusťte:

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

kde [efi dir] je buď / boot / ef i nebo / mnt a [efi device] je zařízení se systémovým oddílem EFI. Pokud nevíte, použijte příkaz lsblk -o NAME,PARTTYPE,MOUNTPOINT | grep -i "C12A7328-F81F-11D2-BA4B-00A0C93EC93B"

Komentáře

  • Děkuji, V grub-install --efi-directory=/boot/EFI jak chrootuji do /mnt.
  • Možná hloupého Q, ale ne ' Nemáte adresář EFI. Kde jeden dostanu? Myslím tím, že má obsahovat soubory, který příkaz jej může znovu vytvořit?
  • @LennartRolland Pokud máte systém kompatibilní s UEFI, bude váš systémový disk být oddílem GPT a obsahuje " systémový oddíl UEFI. " obvykle první oddíl a bude typu EF00. Připojí se mnoho distribucí toto ve výchozím nastavení jako / boot / efi mimo jiné umožňuje zavaděči GRUBu aktualizovat své soubory. Pokud ne, musíte jej ' připojit sami a přidat do fstab. může mít také systém UEFI, ale ten používá starší režim, což znamená, že vaše oddíly budou typu msdos a vy ' nebudete mít a / boot / efi. Weirderovy konfigurace existují, ale pokrývá většinu z nich.
  • Vaše pokyny, pokud není připojen EFI, jsou nesprávné. Viz moje úprava. mount | grep /dev/sda6 nefunguje '. Pokud není EFI připojeno, musíte zkontrolovat typ oddílů.
  • @giusti Pravděpodobně lepší je prostě nevytvářet konkrétní odkazy na názvy zařízení.

Odpověď

Režim záchrany Grub lze považovat za

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

Po přihlášení zadejte sudo update-grub && sudo grub-install /dev/sda.

Komentáře

  • Pokud by grub-install nebylo hotovo před update-grub?
  • když jsem napsal první příkaz, dostal jsem " bash: syntax error poblíž neočekávaného tokenu `(' "
  • @ Another.Chemist: zadané příkazy by měly jít myslím, že k interaktivní konzole GRUB. To by bylo před spuštěním jádra. Vaše chyba vypadá, jako byste zadali příkazy do Bash.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *