Table of Contents
Conseguir root en sistemas GNU/Linux con GRUB sin tener la password (rootear)
Mayoría de distribuciones de GNU/Linux
Entrar en Grub y pulsar la tecla ESC.
Pulsar la tecla “e”.
En la linea del kernel agregar “init=/bin/bash”. Si se desea se puede probar antes simplemente agregando “single”, ya que dependiendo de la distro, esta puede o no pedir contraseña (mirar /etc/inittab).
Suponiendo que la password es solicitada, se debe indicar que en el inicio se ejecute una terminal, para el ejemplo Bash.
"Linux boot /init.... ro init=/bin/bash "
Pulsar “Cntrl + x“
Remontar el sistema de ficheros raíz del GNU/Linux instalado, cambiar la password y reiniciar el sistema.
mount -o remount,rw /dev/sdaX / passwd reboot
Rootear sistemas RedHat / CentOS / Derivados
Para esta familia de sistemas es suficiente con entrar en el modo “single user”, a diferencia de otros sistemas no pedirá password y no es necesario por tanto impedir que init arranque.
CentOS =< 6.X
Entrar en Grub y pulsar la tecla ”a”. Agregar un espacio y un “1” al final de la linea para posteriormente pulsar la tecla “enter”.
... rhgb quiet 1
¿De qué depende el uso de contraseña en el modo single? Fichero /etc/inittab. S = 1 = single.
~~:S:wait:/sbin/sulogin
Si se desea que el sistema solicite o no una password al entrar en el modo single, se debe agregar o comentar dicha linea en el fichero inittab.
CentOS >= 7.X
Metodo 1: Si NO se conoce la password de root.
- Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
- Buscar la entrada que compienza con “linux16”
- Modificar “ro” por “rw init=/sysroot/bin/sh”
- Pulsar CTRL-X o F10 para arrancar con las opciones especificadas.
- Una vez se muestra la terminal, se debe ejecutar el comando chroot.
chroot /sysroot
Método 2: Si NO se conoce la password de root.
- Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
- Buscar la entrada que compienza con “linux16”
- Modificar “rhgb quiet” por “init=/bin/sh”
- Pulsar CTRL-X o F10 para arrancar con las opciones especificadas.
- Una vez se muestra la terminal, se debe remontar la partición raiz con permido de escritura.
mount -o remount,rw / # exec /sbin/init 6" # Reiniciar.
Método 3: Si se conoce la password de root, se puede usar el modo de emergencia para tareas de rescate. Útil cuando se necesita reparar algo y el sistema no arranca correctamente. Lógicamente no sirve para recuperar la password de root ya que es necesaria para ingresar en este modo.
- Pulsar la tecla “e” posicionada sobre la linea que queremos utilizar.
- Buscar la entrada que compienza con “linux16”
- Al final de la linea agregar “systemd.unit=rescue.target”
- Pulsar CTRL-X o F10 para arrancar en el modo single.
Ubuntu
Si no se muestra el menú de Grub en el arranque, se debe dejar pulsada la tecla Esc durante el arranque.
Opción 1
- Pulsar la letra “e” y buscar la linea que empieza con “linux” para agregar al final “init=/bin/bash”.
- Pulsar “X” o “F10” para arrancar el sistema y obtener la terminal con root.
# Remontar el sistema de ficheros como lectura y escritura. mount -n -o remount,rw /
- Utilizar el comando passwd para reiniciar la contraseña.
Opción 2 (De debe tener activo el usuario root y conocer la password).
- Dentro de Grub, dirigirse a un modo de recuperación, puede que se encuentre en opciones avanzadas.
- Seleccionar la opción “Drop to root shell prompt”.
# Remontar el sistema de ficheros como lectura y escritura. mount -n -o remount,rw /
- Utilizar el comando passwd para reiniciar la contraseña.
Método estándar con LiveCD
- Identificar el disco / partición donde se tiene GNU/linux con por ejemplo “fdisk-l”
- Montar la partición en /mnt: “mount /dev/sda1 /mnt”
- Montar ahora el sistema de ficheros del disco como si fuera el del liveCD.
for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done
- Nos enjaulamos en el entorno montado mediante “chroot /mnt”
- Modificar la contraseña mediante “passwd” y reiniciar.