Cómo reparar GRUB en una máquina sin lector de CD

Es posible que al reinstalar Windows en una partición o utilizar algún software de restauración, GRUB quede dañado o sobreescrito, y debamos proceder a su reparación. Los netbooks no llevan lector de CD, pero sí son capaces de arrancar desde un puerto USB. Entramos en el BIOS del ordenador y lo configuramos para que intente arrancar antes de un disco USB que de un disco duro.

En otra computadora descargamos una imagen ISO de Debian Live, eligiendo la arquitectura adecuada. Insertamos un pendrive vacío (o sin datos a conservar) en un puerto USB, y comprobamos en que dispositivo se ubica (dmesg | grep scsi -A 3). Sin montar el dongle, copiamos la imagen (debe hacerse como usuario root):

bronchales:/tmp# dd if=debian-live-504-amd64-kde-desktop.img of=/dev/sdb bs=1M
704+0 records in
704+0 records out
738197504 bytes (738 MB) copied, 351,448 s, 2,1 MB/s
bronchales:/tmp# sync

Ya podemos extraer el lápiz USB, conectarlo al sistema dañado, y arrancar. Montaremos la partición que contenga nuestro sistema GNU/Linux, por ejemplo en /mnt, y ejecutaremos:

mount -t proc /proc /mnt/proc
mount -t sysfs /sys /mnt/sys
mount -o bind /dev /mnt/dev
chroot /mnt /bin/bash
grub-install /dev/sda
exit
umount /mnt/dev
umount /mnt/sys
umount /mnt/proc
reboot

Al reiniciarse el netbook, ya debería saludarnos el menú de GRUB.