Venga, vamos a hacer que esto arranque:
Necesitamos ver la lista de particiones que tenemos disponibles
ls
Este comando nos mostrará todas las particiones que ha podido encontrar.
En mi caso:
(hd0) (hd0,1) (hd1) (hd1,1) (hd1,5) (hd2) (hd2,1) (hd3) (hd3,1)
Ahora debemos saber cual de esas particiones contiene la carpeta /boot/grub, con todos los datos necesarios para arrancar, para ello, bastará con ir haciendo un “ls” para cada una de las particiones, tal que:
ls (hd1,1)/
* Ojo con la barra del final
Una vez encontremos la partición correcta el “ls” nos devolverá un listado característico de carpetas, entre ellas la necesitada boot
Ahora hemos de añadir el prefijo:
set prefix=(hd1,1)/boot/grub
* Obviamente cambia el hd1,1 por hdX,Y según toque en tu caso, la carpeta grub no tiene porque estar debajo de boot.
Vale, ahora vamos a ampliar un poco los comandos que disponemos en la consola:
insmod (hd1,1)/boot/grub/linux.mod
Ahora sólo quedará:
Setear como root la partición
set root=(hd1,1)
Cargamos la imagen de linux
linux /boot/vmlinuz-2.6.32-23-generic root=/dev/sdb1
* Si no estamos seguros de que imagen cargar lo podemos comprobar con un “ls” del directorio boot
** La nomenclatura del punto de montaje: sdb1, viene dada por el nombre de la partición: (hd1,1) es sdb1, del mismo modo que (hd0,2) sería: sda2
Ahora falta cargar el kernel:
initrd /initrd.img
Y finalmente podemos arrancar
boot
Una vez dentro del sistema, podremos reinstalar grub para evitar este error en la próxima carga
grub-install /dev/sdb