Cómo cambiar (resetear, reset) la contraseña del superusuario root en Linux CentOS 7 cuando se nos ha olvidado o no la sabemos. Explicamos paso a paso cómo recuperar el acceso con el usuario root en un equipo con el sistema operativo Linux y la distribución CentOS 7.
- Escenario inicial, no se sabe la contraseña de root.
- Requisitos necesarios para resetear la contraseña de root en Linux CentOS 7.
- Resetear/Modificar la contraseña del superusuario root en Linux CentOS 7 cuando se nos ha olvidado o la hemos perdido.
Escenario inicial, no se sabe la contraseña de root
¿A quién no le ha ocurrido que tras establecer una contraseña para el superusuario root se haya olvidado al poco tiempo? ¿Y cuando introducimos una contraseña con el bloqueo de mayúsculas activado o el bloqueo de números desactivado involuntariamente? En el primer arranque nos daremos cuenta de que no sabemos la contraseña del usuario root y no podemos iniciar sesión en el equipo.
También se puede dar el caso de que un administrador de sistemas deje la empresa y no diga las contraseñas de los usuarios administradores o bien que las haya cambiado.
Este proceso sirve para todas estas situaciones en las que, por el motivo que sea, no sabemos la contraseña del superusuario root.
Requisitos necesarios para resetear la contraseña de root en Linux CentOS 7
Necesitaremos un equipo con el sistema operativo Linux CentOS 7 y necesitaremos ver su secuencia de arranque (desde el inicio), dado que tendremos que elegir el modo de arranque y cambiar unos valores.
En principio no necesitamos más requisitos, solo acceso al equipo desde el arranque, o bien con un monitor conectado al equipo (si es físico) o bien con la consola de VMware (u otro hipervisor del sistema de virtualización que usemos).
Es conveniente hacer una copia de seguridad de la máquina virtual antes de iniciar este proceso, puesto que se modifica el boot de inicio y podríamos provocar un fallo en el arranque. O bien hacemos un snapshot (si está virtualizado) o bien una copia de seguridad del equipo completo.
Resetear/Modificar la contraseña del superusuario root en Linux CentOS 7 cuando se nos ha olvidado o la hemos perdido
Apagaremos el equipo por completo, en el caso de una máquina virtual abriremos la consola de VMware (o del sistema de virtualización que estemos usando). En nuestro caso, como la máquina virtual tiene las VMware Tools instaladas, podremos apagarla de forma controlada pulsando en «VM» – «Power» – «Shut Down Guest»:
Una vez apagada la iniciaremos pulsando en el botón «Power On»:
Pulsaremos dentro de la consola con el ratón para pasar el puntero del teclado a la máquina virtual. En cuanto aparezca las opciones de arranque pulsaremos la tecla de cursor arriba o abajo para. Dejaremos seleccionada la primera opción y pulsaremos la tecla «e» para editar el arranque:
Buscaremos la línea con el texto ro rd.lvm…, posicionando el cursor en ro:
Lo que haremos será reemplazar el ro por el siguiente texto:
rw init=/sysroot/bin/sh
De forma que quedará:
…..root rw init=/sysroot/bin/sh lvm.lv…..
Quedando:
Nota: si no podemos poner el signo = podemos usar su correspondiente valor ASCII, para escribirlo pulsaremos ALT + 61. Igual ocurre con la /, si no nos aparece podemos escribirla con ALT + 47.
Pulsaremos «Control + X» para guardar los cambios e ir a la línea de comandos.
Escribiremos el siguiente comando:
chroot /sysroot
Y este otro para cambiar la contraseña del usuario root:
passwd root
Nos pedirá la nueva contraseña dos veces:
Actualizaremos los parámetros de SELinux con este comando:
touch /.autorelabel
Y reiniciaremos el equipo con:
reboot
Se iniciará el arranque por defecto:
Y ya podremos acceder con la nueva contraseña del superusuario root: