Bom, eu já usava o Windows 11 em dual boot com o Linux Mint(cada um em um SSD diferente). Na semana passada eu resolvi fazer uma instalação limpa do Windows 11, após isso o GRUB deixou de aparecer. Tentei seguir alguns passos que encontrei, mas sempre sem sucesso por causa do erro “grub-install: error: cannot find EFI directory.”, como demonstra na imagem. Enfim, alguém pode me ajudar? Definitivamente não quero ter que instalar o Mint tudo de novo, e como deu pra ver sou bem leigo nisso
Olá @Zoommod , seja bem vindo!
Pelo que eu pude entender da imagem, no disco /dev/sda
, você tem uma partição com o Windows e uma partição com o Linux, e ainda, uma partição Swap. Note que a partição do Linux tem apenas 28 GB o que é relativamente pouco. Em breve você poderá ter problema de falta de espaço no seu Linux.
Se antes você usava cada sistema em um disco diferente, então, a partição EFI do Linux deveria estar no disco sda
mas ela está no sdb
. Além disso, não sei se era sua intenção manter a instalação antiga do Windows, mas foi isso que você fez, manteve a sua instalação antiga do Windows, e instalou outro Windows no mesmo SSD onde está o Linux. Perdoe a minha sinceridade, mas eu acho que ficou um pouco “bagunçado”.
Tem como recuperar o boot do Linux? Sim. Agora, sinceramente eu não acho essa a melhor solução. A sugestão que eu faço agora pra você resolver isso da forma mais simples possível, e deixando as coisas organizadas é o seguinte:
-
Apague seu Windows antigo do disco
sdb
. -
Faça uma instalação limpa do Linux nesse disco, alocando, no mínimo, uns 60 GB para a partição raiz (
/
), ou até mesmo o espaço todo do disco, se desejar. -
Apague as partições do Linux no disco
sda
e use esse espaço para expandir sua partição do Windows nesse disco. -
Mude a ordem do boot na Bios para o disco
sdb
, onde está o GRUB do Linux. Assim você poderá escolher qual S.O. iniciar.
Observações
-
Antes de apagar as suas partições com as instalações antigas do Linux e do Windows, faça backup de todos os seus arquivos importantes contidos nessas partições.
-
Estou assumindo que realmente você usava o Windows e o Linux cada um em um disco diferente. Logo, assume-se que o disco
sdb
abriga sua instalação antiga do Windows e osda
a instalação nova. A não ser que aquela partição de 89 GB nosda
seja apenas uma partição NTFS só com arquivos, não com uma instalação do Windows nela. Você pode confirmar isso por favor?
Espero ter sido claro o suficiente… rs
Eu não entende esse “windows basic data” não, com 89G. sei la o que ele faz com isso.
Olá Thiago, obrigado por me responder. Então… eu reservei pouco espaço para o Linux propositalmente pq eu uso ele apenas para programar em C e nada mais. Sobre a partição com 89GB: eu uso ela como uma “extensão” pro Windows. Do SSD de 120GB, 89GB destinei para alguns arquivos avulsos de lá e o restante para fazer a instalação do Linux Mint(ou seja, o Windows está na verdade no sdb e não o contrário).
Acho muito válido a alternativa de fazer tudo do 0, mas me tira uma dúvida: tem como eu acessar os arquivos que estão no Linux Mint a partir do Windows? Recuperando alguns poucos arquivos que eu tenho lá, não me importaria em fazer uma instalação limpa(e correta dessa vez).
Se for ext4 tem como usando um programinha para isso: Ext2explore
Tenta acessar com ele ai para ver se funciona.
Obrigado ‘aguamole’, consegui recuperar uns arquivos que considerei importantes. Mas ainda sobre esse erro, o problema daria pra ser contornado? Seria interessante que alguém postasse a solução, não pra mim, mas para futuras pessoas que eventualmente façam a mesma cagada que eu kkk
Listando as partições:
sudo fdisk -l
EFI:
sudo mount /dev/sdXY /mnt
sudo grub-install --boot-directory=/mnt/boot /dev/sdX
sudo update-grub
sudo reboot
Legacy Bios:
sudo grub-install --root-directory=/mnt /dev/sdX
sudo update-grub
sudo reboot
PS: X é a letra da unidade enquanto Y é o número da partição
(edit: talvez o grub ainda esteja instalado, apenas é questão de vc alterar o boot padrão na BIOS ou usando F11 durante a inicialização para escolher o sistema a ser iniciado)
Veja o erro: não foi possível localizar o diretório EFI. Para usar o grub-install em modo uefi, você deve especificar a partição EFI onde ele será instalado.
Outro problema é que a opção --root-directory
é específica para o modo legacy. Você está usando o modo uefi, então deverá usar a opções --target=x86_64-efi
, --boot-directory=DIRETÓRIO
e --efi-directory=DIRETÓRIO
(o grub-install --help
ajuda nessa hora).
Para montar o diretório EFI, recomendo usar o mesmo diretório da instalação antiga (mas vc pode criar um diretório em qualquer lugar e montá-lo).
- Monte a raiz antiga em /mnt:
mount /dev/sda2 /mnt
- Monte a partição EFI e, /mnt/boot/efi:
mount /dev/sdb1 /mnt/boot/efi
- Instale o grub com o comando completo para instalações efi:
grub-install --target=x86_64-efi --boot-directory=/mnt/boot --efi-directory=/mnt/boot/efi
Teoricamente é isso, vc poderá reiniciar o computador e o grub deverá ser o inicializador padrão (talvez já detectando o windows). Para alterar o boot padrão (windows ou grub) use as opções da BIOS. Recomendo também escolher o boot usando o próprio menu EFI, geralmente acessível paertando F11 quando o computador está iniciando.
Obrigado a todo mundo, de verdade. Espero poder contar com vocês para futuras dúvidas
Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.