Cómo recuperar o rescatar el cargador de arranque Grub dañado en CentOS 7


En este tutorial, cubriremos el proceso de rescate de un cargador de arranque dañado en CentOS 7 o Red Hat Enterprise Linux 7 y recuperaremos una contraseña de root olvidada.

El cargador de arranque GRUB a veces puede dañarse, comprometerse o eliminarse en CentOS debido a varios problemas, como fallas relacionadas con el hardware o software o, a veces, puede ser reemplazado por otros sistemas operativos, en caso de arranque dual. Un cargador de arranque Grub dañado hace que un sistema CentOS/RHEL no pueda arrancar y transferir el control al kernel de Linux.

La etapa uno del cargador de arranque Grub se instala en los primeros 448 bytes al principio de cada disco duro, en un área conocida normalmente como Master Boot Record (MBR).

El tamaño máximo de MBR es de 512 bytes. Si por alguna razón se sobrescriben los primeros 448 bytes, CentOS o Red Hat Enterprise Linux no se pueden cargar a menos que arranque la máquina con una imagen ISO de CentOS en modo de rescate o usando otros métodos de carga de arranque y reinstale el cargador de arranque MBR GRUB.

  1. Descargar la imagen ISO del DVD de CentOS 7

Recuperar el cargador de arranque GRUB en CentOS 7

1. En el primer paso, descargue la última versión de la imagen ISO de CentOS 7 y grábela en un DVD o cree una memoria USB de arranque. Coloque la imagen de arranque en la unidad apropiada de su máquina y reinicie la máquina.

Mientras el BIOS realiza las pruebas POST, presione una tecla especial (Esc, F2, F11, F12, Supr, según las instrucciones de la placa base) para ingresar a la configuración del BIOS y modificar la secuencia de inicio para que la imagen de DVD/USB de inicio se inicie primero en el arranque de la máquina, como se ilustra en la imagen de abajo.

2. Después de que se haya detectado el dispositivo de arranque de CentOS 7, aparecerá la primera pantalla en la salida del monitor de su máquina. En el primer menú, elija la opción Solución de problemas y presione la tecla [Intro] para continuar.

3. En la siguiente pantalla, elija Rescatar una opción del sistema CentOS y presione la tecla [Intro] para avanzar. Aparecerá una nueva pantalla con el mensaje "Presione la tecla Enter para comenzar el proceso de instalación". Aquí, simplemente presione la tecla [enter] nuevamente para cargar el sistema CentOS en la memoria.

4. Después de que el software de instalación se cargue en la RAM de su máquina, aparecerá el mensaje del entorno de rescate en su pantalla. En este mensaje, escriba 1 para continuar con el proceso de recuperación del sistema, como se ilustra en la imagen de abajo.

5. En el siguiente mensaje, el programa de rescate le informará que su sistema se ha montado en el directorio /mnt/sysimage . Aquí, como sugiere el programa de rescate, escriba chroot/mnt/sysimage para cambiar la jerarquía del árbol de Linux de la imagen ISO a la partición raíz montada debajo de su disco.

6. A continuación, identifique el disco duro de su máquina emitiendo el siguiente comando en el mensaje de rescate.

# ls /dev/sd*

En caso de que su máquina utilice un controlador RAID físico antiguo subyacente, los discos tendrán otros nombres, como /dev/cciss . Además, en caso de que su sistema CentOS esté instalado en una máquina virtual, los discos duros pueden llamarse /dev/vda o /dev/xvda .

Sin embargo, una vez que haya identificado el disco duro de su máquina, puede comenzar a instalar el cargador de arranque GRUB emitiendo los siguientes comandos.

# ls /sbin | grep grub2  # Identify GRUB installation command
# /sbin/grub2-install /dev/sda  # Install the boot loader in the boot partition of the first hard disk

7. Una vez que el cargador de arranque GRUB2 se haya instalado correctamente en el área de MBR de su disco duro, escriba exit para volver al árbol de imagen ISO de arranque de CentOS y reinicie la máquina escribiendo init 6 en la consola, como se ilustra en la captura de pantalla siguiente.

8. Después de reiniciar la máquina, primero debe ingresar la configuración del BIOS y cambiar el menú de orden de arranque (coloque el disco duro con el cargador de arranque MBR instalado en la primera posición en el orden del menú de arranque).

Guarde la configuración del BIOS y, nuevamente, reinicie la máquina para aplicar el nuevo orden de inicio. Después de reiniciar, la máquina debería iniciarse directamente en el menú de GRUB, como se muestra en la imagen de abajo.

¡Felicidades! Ha reparado con éxito el cargador de arranque GRUB dañado del sistema CentOS 7. Tenga en cuenta que a veces, después de restaurar el cargador de arranque GRUB, la máquina se reiniciará una o dos veces para aplicar la nueva configuración de grub.

Recuperar contraseña de root en CentOS 7

9. Si ha olvidado la contraseña de root y no puede iniciar sesión en el sistema CentOS 7, básicamente puede restablecer (en blanco) la contraseña iniciando la imagen del DVD ISO de CentOS 7 en modo de recuperación y siga los mismos pasos que se muestran arriba, hasta llega al paso 6. Mientras está chrooteado en su sistema de archivos de instalación de CentOS, emita el siguiente comando para editar el archivo de contraseña de las cuentas de Linux.

# vi /etc/shadow

En el archivo de sombra, identifique la línea de contraseña raíz (generalmente es la primera línea), ingrese al modo de edición vi presionando la tecla i y elimine toda la cadena entre los primeros dos puntos “:” y los segundos dos puntos ”:” , como se ilustra en la siguiente captura de pantalla.

Después de terminar, guarde el archivo presionando las siguientes teclas en este orden Esc ->: -> wq!

10. Finalmente, salga de la consola chrooted y escriba init 6 para reiniciar la máquina. Después de reiniciar, inicie sesión en su sistema CentOS con la cuenta de root, que ahora no tiene una contraseña configurada, y configure una nueva contraseña para el usuario root ejecutando el comando passwd, como se ilustra en la captura de pantalla a continuación.

¡Eso es todo! Arrancar una máquina física o una máquina virtual con una imagen ISO de DVD de CentOS 7 en modo de recuperación puede ayudar a los administradores del sistema a realizar varias tareas de resolución de problemas para un sistema roto, como recuperar datos o los descritos en el tutorial.