Reparar GRUB desde Live USB
Introducción
Cuando GRUB está tan dañado que no puede arrancar en absoluto (MBR sobreescrito, partición EFI borrada, grub.cfg corrupto), la única forma de repararlo es desde un entorno externo: un Live USB de la misma distribución o cualquier
distribución Linux. El proceso consiste en hacer chroot al sistema instalado y reinstalar GRUB desde
dentro.
1. Arrancar desde el Live USB
Arrancar el equipo desde un USB con Ubuntu, Debian o cualquier distribución Linux. En el entorno Live, abrir una terminal.
# Identificar los discos y particiones del sistema instalado
lsblk
lsblk -f # muestra UUID y tipo de sistema de ficheros
fdisk -l # lista todas las particiones
# Ejemplo de salida típica en un sistema con GPT + EFI:
# /dev/sda1 EFI System 512M vfat
# /dev/sda2 Linux filesystem / ext4
# /dev/sda3 Linux swap swap
2. Montar el sistema instalado
Sistema con BIOS + MBR
# Montar la partición raíz (ajustar /dev/sda2 a la partición correcta)
mount /dev/sda2 /mnt
# Montar los sistemas de ficheros virtuales necesarios para chroot
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
Sistema con UEFI + GPT
# Montar la partición raíz
mount /dev/sda2 /mnt
# Montar la partición EFI (ESP) en su punto de montaje correcto
mount /dev/sda1 /mnt/boot/efi
# Montar los sistemas de ficheros virtuales
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
# En sistemas modernos, también montar efivarfs:
mount --bind /sys/firmware/efi/efivars /mnt/sys/firmware/efi/efivars
3. Entrar en chroot
chroot /mnt
# Verificar que estamos dentro del sistema correcto:
cat /etc/os-release
lsblk
4. Reinstalar y regenerar GRUB
Sistema con BIOS + MBR
# Instalar GRUB en el disco (no en la partición, sino en el disco completo)
grub-install /dev/sda
# Regenerar grub.cfg
update-grub
Sistema con UEFI + GPT
# Instalar GRUB para EFI
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
# Regenerar grub.cfg
update-grub
# Verificar que la entrada EFI se creó correctamente
efibootmgr -v
En sistemas RHEL/Rocky/AlmaLinux
# BIOS
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg
# UEFI
grub2-install --target=x86_64-efi --efi-directory=/boot/efi
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
5. Salir y reiniciar
# Salir del entorno chroot
exit
# Desmontar todo en orden inverso
umount /mnt/sys/firmware/efi/efivars # solo si se montó (UEFI)
umount /mnt/sys
umount /mnt/proc
umount /mnt/dev
umount /mnt/boot/efi # solo si se montó (UEFI)
umount /mnt
# Retirar el USB y reiniciar
reboot
Problemas frecuentes durante la reparación
grub-install: cannot find EFI directory
# La partición EFI no está montada o no se montó en /mnt/boot/efi
# Verificar:
ls /mnt/boot/efi
mount | grep efi
update-grub no detecta otros sistemas operativos
# Instalar os-prober y volver a ejecutar update-grub
apt install os-prober
os-prober
update-grub
Error al hacer chroot: cannot run command '/bin/bash'
# El Live USB es de arquitectura diferente (ej. 32 bit vs 64 bit)
# o falta montar /dev antes del chroot
mount --bind /dev /mnt/dev