Reparar Grub2 en Ubuntu Server con UEFI

Una vez más voy a crear esta entrada debido a un problema del día a día. Resulta que recientemente he tenido la necesidad de recuperar el cargador de arranque en un Ubuntu Server 14.04 que tenía instalado con UEFI que tenía montado sobre Hyper-V y en generación 2. El fallo comenzó al intentar mover la máquina entre dos servidores, momento en el que al intentar encenderla y ano encontraba el disco de arranque.

Antes de comenzamos vamos a sacar un backup del fichero del disco duro de la máquina virtual ya que es probable que lo necesitamos al finalizar nuestro proceso.

Ahora lo que debemos hacer es iniciar el servidor con un live-cd, la propia ISO de Ubuntu Server nos puede servir, iniciamos el modo de recuperación y vamos hasta el punto que iniciamos una sesión interactiva de terminal y entramos en el bash.

Una vez que tenemos nuestra sesión de bash vamos a montar la partición raíz, esto dependerá de si tenemos configurado lvm (podemos ver el nombre del volumen con vgscan) o no.

sudo mount /dev/volumenVLM/root /mnt

Tras esto ya tendremos acceso a nuestros datos originales, pero aún tenemos que montar los directorios que grub necesita, esto lo haremos con los siguientes comandos:

sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Y nos vamos a cambiar la raíz a nuestro nuevo directorio con:

sudo chroot /mnt

Por último vamos a montar el directorio de EFI para que grub lo tenga todo a mano, en mi caso el disco tenía tres particiones y sda1 era la partición fat32 de EFI, por lo que usaré en mis comandos

sudo mkdir /boot/efi
sudo mount /dev/sda1 /boot/efi

Ejecutamos la reinstalación del cargador de arranque

grub-install /dev/sda
grub-install --recheck /dev/sda
update-grub

Por último desmontamos todo y reiniciamos

exit
sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev/pts
sudo umount /mnt/dev
sudo umount /mnt
sudo reboot

En mi caso, en este punto mi servidor de Hyper-V había añadido una nueva opción de arranque pero seguía sin iniciar correctamente pero simplemente cambiando el fichero físico del disco duro en la máquina virtual por el backup que hemos sacado al inicio ya se inicio correctamente..

Como siempre digo, así es como solucione el problema si podéis aportar más información del motivo por el que necesité la copia de seguridad no dudéis en dejar un comentario ya que podríamos ayudar a más gente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.