This is an old revision of the document!
−Table of Contents
Como reinstalar o GRUB2 no Linux
Supondo que a particao de boot esteja em sda1
sudo mount /dev/sda1 /mnt sudo mount -t proc none /mnt/proc sudo mount -o bind /dev /mnt/dev sudo mount -o bind /sys /mnt/sys sudo mount -t devpts devpts /mnt/dev/pts sudo chroot /mnt sudo update-grub sudo grub-install /dev/sda
http://linuxandfriends.com/how-to-reinstall-grub2-chroot-into-a-linux-partition/
E se for Grub2 com UEFI?
Bootar com um LiveUSB de linux no modo UEFI!
Esquema e bem parecido, mas precisa lembrar de montar tambem a particao do EFI depois de montar o /.
Supondo que a particao root do Linux esta em /dev/sda2 e que a particao do EFI esta em /dev/sda1
sudo mount /dev/sda2 /mnt #sda2 = raiz do linux sudo mount /dev/sda1 /mnt/boot/efi #sda1 e a particao efi for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done # monta as pastas dinamicas do sistema dentro do sistema instalado no HD sudo cp /etc/resolv.conf /mnt/etc/ #supostamente pra fazer a rede funcionar depois do chroot... pode ser que de erro, mas nem por isso deixara de funcionar, so talvez demore um pouco pra pegar dhcp. modprobe efivars # pra garantir que carregou o modulo efivars sudo chroot /mnt #muda a raiz para dentro do sistema instalado no HD #espere pegar a rede e entao #para Debian: apt-get install --reinstall grub-efi-amd64 # ou alternativamente: apt-get install --reinstall grub-efi update-grub #para outros sistemas, veja qual e o pacote grub-efi e mande reinstalar.
Nao deu certo - Alternativas
Se o pendrive bootavel for baseado em Arch, como o System Rescue CD 6+ por exemplo, algumas coisas precisam ser substituidas, por exemplo o modprobe efivars que nao ira funcionar. No caso, esse link tem algumas sugestoes: https://superuser.com/questions/678976/installing-arch-linux-issue-with-modprobe-efivars
Essencialmente a sugestao antes do chroot e que se rode o seguinte:
#veja se existe o diretorio /sys/firmware/efi/efivars. #provavelmente tem se vc bootou no modo UEFI do pendrive #rode um mount --bind /sys/firmware/efi/efivars /mnt/sys/firmware/efi/efivars