Recuperar GRUB EFI no Deepin

Algumas pessoas que usam a Distro Deepin, alguma vez ou outra já deve ter experimentado a experiência de perder o GRUB em computadores que usam EFI e tiveram dificuldades de recuperar o mesmo. Em um dos meus testes nesta Distro, fiz algo que resultou na perca do GRUB e percebí que não dá pra recuperar o GRUB EFI da mesma forma que o habitual GRUB MBR (Legacy).

Tentei fazer o que o Wiki do Deepin sugeriu, mas não deu certo. Porém, após alguns testes consegui resolver, mas pra isto precisei verificar o log de instalação do Deepin pra saber o que ele faz na hora de instalar o GRUB-EFI. O Log de instalação fica em /var/log/deepin-installer.log.

Então vamos aos passos:

  1. Faça o boot com o instalador do Deepin em modo EFI, então vai aparecer o menú de boot do mesmo, selecione a opção "Install Deepin" :

  1. Aperte a letra E para entrar em modo edição e verá no meio das opções de boot do Kernel a opção livecd-installer:

  1. Vá até esta opção e apague:

  1. Aperte F10 para iniciar o Boot. Como foi apagado a opção livecd-installer, o sistema irá fazer o boot como um Live, assim como o Ubuntu Live.

  2. A partir daqui vou explicar como fiz em meu sistema, pois fica mais fácil explicar e talvez para vocês entenderem.
    Após o inicio do "Deepin Live" , abra o Terminal e faça o comando lsblk para ver sua árvore de devices e ver através do mapeamento a configuração do seu dispositivo. Eu tenho bastante partições, também sei que a minha partição EFI foi criada em /dev/sda2, pois nele eu criei um sistema de arquivos de 300 MB e instalei o Deepin na partição /dev/sda4. Veja minha árvore (Eu fiquei como root direto pra não ter que ficar digitando sudo toda hora, pra ficar assim basta fazer o comando sudo su):

root@Deepin:/home/deepin# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 1.8G 1 loop /usr/lib/live/mount/rootfs/filesystem.squashfs
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 2G 0 part
├─sda2 8:2 0 300M 0 part
├─sda3 8:3 0 50G 0 part
├─sda4 8:4 0 50G 0 part
└─sda5 8:5 0 829.2G 0 part
sdb 8:16 0 931.5G 0 disk
└─sdb1 8:17 0 931.5G 0 part
sdc 8:32 1 7.5G 0 disk
└─sdc1 8:33 1 7.5G 0 part /usr/lib/live/mount/medium

  1. Após saber qual é sua partição Raiz e a partição EFI, monte os mesmos. Eu escolhi montar as partições na pasta /mnt pois é uma pasta padrão do Linux que sempre está vazia. Em meu caso ficou assim:
mount /dev/sda4 /mnt/
mount /dev/sda2 /mnt/boot/efi/
  1. Após montar estas 2 partições principais, monte outras partições essenciais usando a opção bind do mount:
mount -o bind /proc/ /mnt/proc/
mount -o bind /sys/ /mnt/sys/
mount -o rbind /dev /mnt/dev/
mount -o rbind /dev/pts/ /mnt/dev/pts/
mount -o bind /run/ /mnt/run/
  1. Agora logue-se com o chroot na partição montada da sua Distro:
chroot /mnt/
  1. Nesta parte, segui o Wiki do Deepin (reinstalar o grub-efi mas não deu certo, então verifiquei o log de instalação do Deepin e fiz exatamente o que o Wiki diz, só que com os pacotes que encontrei
    No meio da instalação, se perguntar qual versão do GRUB deseja usar, escolha a versão nova:
apt-get install --reinstall grub2-common grub-efi-amd64-bin grub-efi-amd64 grub-efi-amd64-signed mokutil
  1. Algumas pessoas na internet disseram que não precisaram fazer este passo em diante, então faça se quiser, porém, se não der certo terá que repetir os passos até aqui tudo de novo:
grub-install --recheck /dev/sda
update-grub
  1. Saia do chroot, reinicie o computador e veja se deu certo:
exit
reboot

Não se preocupe em desmontar as partições e devices que foram montados manualmente até aqui, pois vai reiniciar o computador mesmo.

Qualquer resultado, se deu certo ou não. Qualquer dúvida ou feedback, fiquem a vontade para comentar o post.

Até mais pessoal :wink::+1:

13 curtidas

Poxa, comigo não funcionou. O comando chroot não é reconhecido e antes dele o comando de montar as pastas da partição / também não foi.
Tentarei novamente com mais calma.

1 curtida

Amigo, peguei gancho na sua dica e fiz um caminho talvez mais longo, mas obtive exito.
Caso alguém mais não consiga com o metodo do @elppans, experimenta esse meu rolê aqui.
IMPORTANTE - só consegui pois já tinha uma partição livre no SSD, li em algum blog que por via de dúvidas, melhor deixar uma partição de 30GB sobrando…

1- Utilizei o pendrive com o instalador do deepin e instalei nessa partição.

2- Instalei da maneira mais rápida possível, tudo em inglês mesmo e selecionando a minha partição livre nas opções avançadas de instalação.

Nesse momento o grub voltou, mas tendo dois deepins inatalados.
O primeiro era o novo, então selecionei o segundo, o meu deepin querido que desejava manter.

Tendo acesso ao sistema novamente…

4- Abri o GParted e exclui a partição do deepin récem instalado

5- No navegador, dentro do disco de sistema, utilizei o botão direito e abri uma nova janela como adm.
Na pasta do boot/efi encontrei 3 pastas…

Em todas elas encontrei um arquivo chamado “grub.cfg”. E o que tem em todos os arquivos das três pastas são iguais.

6- Em vermelho, comparei as ids das partições com as informações do GParted. Em verde, comparei o caminho da partição, antes era gpt4 (onde foi a minha ultima instalação), mudei para gpt3 salvei e fechei. Fiz em todos os arquivos de todas as pastas.

7- No terminal usei;
apt-get install --reinstall grub2-common grub-efi-amd64-bin grub-efi-amd64 grub-efi-amd64-signed mokutil
Selecionei a opção de instalar a versão nova como o @elppans
update-grub
reboot

Funcionou e definitivamente vou ficar no deepin. Esse lance de ficar testando distro não vai rolar comigo, time que tá ganhando não meche.
Eu me meti nessa roubada por culpa do @Dio que tá sempre fazendo umas reviews incríveis das novidades entre as distros e dá vontade de sair testando tudo o que o cara mostra. Dessa vez foi o Zorin OS, em meu computador ele só congelou o tempo todo assim como o Mint. Então eu apaguei a partição do Zorin no gparted e entrei nessa saga.

Vou parar de ver todos os vídeos de review do @Dio para não cair em tentação de novo, rs.

4 curtidas

Ótima dica @brotherdosite.

Fica aí mais um esquema para ajudar geral, quanto mais formas de resolver melhor. E quanto mais fácil também :wink: :+1:

2 curtidas

Opa mano, vlwzão por esse tutorial. Consegui salvar meu Ubuntu :grinning: :grinning: :grinning:

1 curtida

Valeu Brother, descobrindo mais coisas voou postando :grin: :+1:

1 curtida

Pra mim funcionou muito bem. Instalei dual-boot com win11 pra teste e por duas vezes, o deepin perdeu o boot, so entrava no windows.
Obrigado Diolinux.

1 curtida