Tabla de contenido
¡Hola! Hoy traigo la solución a un problema que puedes tener en algún momento en algún sistema linux que administres: Como resetear la password a un sistema linux.
Recuerda que si te gustan estos artículos puedes compartirlos en tus redes sociales y/o comentar en la publicación o en el mismo artículo.
Hemos publicado una entrada mas reciente, sobre esto, trata de como cambiar password de root desde grub
¡Empezamos!
Si te has quedado sin acceso root al sistema pero tienes acceso a una TTY (consola de administración o acceso físico al pc o servidor) no te desesperes. Puedes resetear la password desde una Live CD. Es muy aconsejable que se haga desde la Live CD del sistema instalado, es decir, si es CentOS, con la live CD de CentOS, y si es Debian, con la de Debian. Esto es debido a que puede haber diferencias en el hash de la password al cambiar de distribución.
Distribución y Live CD
En este caso lo vamos a hacer en un sistema CentOS 7.5 con su respectiva Live CD. Lo primero que vamos a hacer es arrancar desde la LiveCD:
Hay que seguir el asistente inicial, en este caso es el asistente inicial de Gnome, en otras distribuciones no hay asistente inicial.
Una vez seguido el asistente inicial, se accede al sistema (cargará el escritorio). Desde ahí cargamos un terminal:
Tenemos que hacernos root ejecutando «su -» o «sudo bash»:
Entrando en materia
En la imagen anterior también podemos ver que hay dos particiones en el dispositivo vda en caso de no ser un dispositivo virtual, el disco suele ser sda lo podemos ver ejecutando fdisk -l sin mas parámetros. Como se puede ver en la imagen la segunda partición es LVM. Todo indica que la primera partición es /boot vamos a montarla para verificarlo:
Queda confirmado que la partición 1 es únicamente /boot por lo que hay que hacer unos pasos mas para montar la partición. Si fuese una partición estándar la montaríamos así y ejecutaríamos el chroot que vamos a ejecutar mas adelante. Pero como tenemos LVM en raíz pues vamos a ejecutar el procedimiento adicional para montar LVM:
Desmontamos vda1 ya que no nos interesa. Después ejecutamos pvdisplay para ver los dispositivos que tienen LVM. Vemos que en este caso solo hay un dispositivo con LVM. Con vgdisplay podemos ver que tenemos un unico volumen volume group llamado centos como veremos en la siguiente imagen, con lvscan tenemos 2 volumenes LVM:
Ejecutamos lvchange -ay volumen para activar el volumen LVM. Despues lo montamos (estará en /dev/mapper como un nuevo dispositivo mapeado). Ejcutando ls en /mnt podemos ver que tiene el sistema operativo.
SeLinux dado problemas
Antes de continuar, en el caso de CentOS tenemos que desactivar SeLinux para evitar problemas. Miramos si está activa en la configuración:
Como está activo, ejecutamos el comando setenforcing 0 para detener SeLinux. Entonces ya podemos ejecutar chroot /mnt o chroot /mn /bin/bash que es donde tenemos montado el dispositivo. Tras hacer esto, ya podemos cambiar la password de root por la que queramos ya que nos encontramos dentro del sistema al que no podíamos acceder. Despues ejecutamos exit para salir y reiniciamos con init 6. Es importante destacar que debemos tener quitada la ISO de la LiveCD o bien configurar la bios para que no arranque desde la LiveCD:
Ahora ya podemos acceder con la password que hemos establecido al sistema operativo al que no teníamos acceso:
Y esto es todo. Si tienes alguna duda o pregunta deja tu comentario.
Si te ha gustado no olvides compartir el articulo en tus redes sociales y/o comentar.
¡Nos vemos!