[TUTORIAL] Reparando GRUB EFI no fedora 33 [TUTORIAL]

editado dezembro 2020 em Tutoriais

Olá, sei que ando menos ativo na comunidade por conta do trabalho, mas sempre que posso tento compartilhar meu pouco conhecimento.

Dias atrás precisei instalar meu SSD em um notebbok HP Pavilion 15 ( Irlândes sério!) que comprei por um bom preço para devolver o note de minha esposa. Não sei se fiz algo errado durante o processo ou foi um update do janelas em dualboot, mas perdi o grub e tentei todo aquele processo conhecido de recuperação do grub por meio de chroot.

O problema é que sempre ao gerar o grub cfg, ou reinstalar o grub na partição EFI, o processo não acusava erros, mas ao rebootar não funcionava.

Após quase um domingo todo estudando e pesquisando sobre o processo,
descobri que no fedor, para instalações UEFI, vc NÃO pode instalar/reinstalar o grub2 com o comando grub2-install. Essa informação pode ser verificada aqui.

Para reparar o grub em modo EFI então usei uma ISO do Fedora Everything, acessei o menu troubleshooting, e iniciei o rescue.

Ao iniciar a recuperação, vc tem a opção de automaticamente detectar, montar e fazer todo processo de bind do sistema em seu HD. Ao fim basta vc entrar no shell e usar chroot sysroot para ter acesso ao seu sistema ( lembre-se de estar com um cabo de rede para facilmente ter acesso a internet ao iniciar o boot).

Estando em chroot, vamos garantir que vc vai instalar os arquivos corretamente apagando a pasta fedora da EFI:

rm -r /boot/efi/EFI/fedora

Agora vamos criar novamente os arquivos corretos reinstalando os devidos pacotes:

dnf reinstall grub2-efi grub2-efi-modules shim os-probe

( talvez vc precise especificar exatamente os pacotes como grub2-efi-x64 por exemplo)

Vamos atualizar a lista de gerenciadores de boot EFI reconhecidos no SETUP:

efibootmgr -c -d /dev/sda -p 1 -w -L Fedora -l '\EFI\fedora\shim.efi'

(Onde /dev/sda é o disco onde está a partição EFI; -p 1 indica o número da partição EFI, que no caso é sda1; Fedora é nome da entrada, por padrão o sistema usa fedora mas preferi Fedora pra fica no padrão da entrada seguinte Windows; e '\EFI\fedora\shim.efi' indica o arquivo loader, como indicado no wiki do projeto deve ser o shim.efi)

Apague as demais entradas com o nome fedora que possam existir deixando apenas a atual criada, no caso Fedora, para isso use:

efibootmgr -b XXXX -B

(Onde XXXX é a numeração da entrada Boot; ex: Boot2002 = efibootmgr -b 2002 -B)

Agora vc atualiza as configurações do grub:

grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Agora basta sair do chroot com exit e usar reboot para reiniciar.
Lembre-se, NÃO USE O COMANDO GRUB2-INSTALL NESSA SITUAÇÃO e remova o disco de boot/pendrive assim que a máquina reiniciar.

Espero ter ajudado, abraços!!!!

Entre ou Registre-se para fazer um comentário.