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
          

La reparación de GRUB desde Live USB es una de las habilidades más valiosas en la administración de sistemas Linux. Dominar el proceso de chroot permite resolver también otros problemas: resetear contraseñas, reparar paquetes rotos o corregir configuraciones que impiden el arranque.

Archivos de configuración: /etc/passwd, /etc/shadow, /etc/group

Índice de la sección

Índice del curso