Raspbian está configurado de manera predeterminada para que la cuenta raíz no pueda iniciar sesión con una contraseña. Esto se hace comenzando con una entrada en la /etc/passwordque comienza:
root:x:0:0:
Los campos están separados por dos puntos y se explican en man 5 passwd(tenga en cuenta que 5, ya que man passwdle dará la página del comando man passwd; la sección 5 es para los archivos de configuración, y en este caso tienen el mismo nombre). Aquí el primero es el nombre ( root), el tercero y el cuarto son los números numéricos uid y gid (ambos 0), y el segundo es para la contraseña. Para la mayoría de las entradas de esta será x, lo que indica la contraseña real está en otro archivo, /etc/shadow.
Tenga en cuenta que "la contraseña real" no se almacena realmente en ningún lugar. Lo que se almacena shadowes un hash unidireccional de la contraseña real. Un hash unidireccional es el resultado de un proceso que siempre producirá lo mismo (permitiendo que se verifique su contraseña), pero es irreversible. En otras palabras, si alguien tiene en sus manos shadow, no hay forma de deducir la contraseña del hash. Sin embargo, si pueden modificar shadow , obviamente pueden desactivar o cambiar lo que funcionará como contraseña. Pero nunca podrán descubrir sus contraseñas. Es por eso que incluso rootno puede hacer eso (aunque la raíz siempre puede cambiarlos a otra cosa sin necesitar el original).
En el caso de root, la entrada en shadowcomienza así, como lo hace para la mayoría de las otras cuentas del sistema:
root:*:
El *indica que actualmente no hay una contraseña posible que pueda usarse para esta cuenta.
El usuario root puede cambiar esto, sin embargo, usando el passwdcomando para establecer una nueva contraseña, que reemplazará la *con el hash mencionado anteriormente (estos siempre comienzan $n$donde nhay algún valor aleatorio que se usa como "sal" para el hash, pero usted no No necesito entender eso).
De todos modos, cuando configuro una tarjeta a partir de una imagen nueva, lo primero que hago es entrar /etc/passwdy eliminar la xentrada de la raíz, por lo que ahora comienza:
root::0:0
Observe que ahora no hay un segundo campo. Esto significa que no hay contraseña y todo lo que tiene que hacer es escribir rooten el indicador de inicio de sesión y se inicia sesión como root. Luego puede usar passwdpara configurar uno.
Entonces, tiene dos opciones aquí, pero ambas requieren que saque la tarjeta del pi y acceda a la segunda partición desde otro sistema (que puede leer / escribir particiones ext4).
Restaurar sudoers. Si tiene una imagen de referencia, esto es fácil, simplemente puede volver a ponerlo como estaba reemplazándolo. De lo contrario, es la opción más complicada ya que debe saber lo que está haciendo (y su historial sudoersno es tan bueno ...).
Edite /etc/passwdy elimine eso xcomo se describió anteriormente, vuelva a colocar la tarjeta, inicie sesión como root, cree una contraseña. Por supuesto, aún tendrá que arreglarlo sudoers, pero la prueba y el error serán más fáciles ya que si realmente lo rootes, siempre podrá acceder a él.
Si no tiene un sistema que pueda acceder a los sistemas de archivos ext4 (un "Live CD" de Debian es una buena opción aquí), entonces está atascado. Tendrá que volver a actualizar la tarjeta y comenzar de nuevo.
/etc. Sisudoersno está allí, es posible que lo haya eliminado accidentalmente, en cuyo caso tendrá que reemplazarlo de una nueva imagen de Debian (no tiene que crear una nueva tarjeta, solo necesita el archivo de imagen, consulte aquí ). .etc/passwda la tarjeta y cambiarla a través de la cuenta raíz de Debian VM.Raspbian NO tiene una
rootcontraseña. Difiere de Ubuntu en ese aspecto. Puede crear unarootcontraseña, pero AFAIK que requieresudo.La mejor opción es editar los archivos montando la tarjeta SD en una máquina Linux.
Esto se puede hacer en la Pi si 1. tiene un lector de tarjetas SD 2. Utiliza un buen sistema operativo en otra SD para arrancar la Pi.
fuente
Para establecer una contraseña de root:
sudo passwd rootFuente: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25
fuente
Si descarga Puppy Linux para Raspberry Pi desde http://puppylinux.org/main/Download%20Latest%20Release.htm#quirky e instálelo en una memoria USB, entonces debería poder iniciar su computadora desde allí, y porque Puppy siempre se ejecuta como root sin contraseña, puede cambiar cualquier cosa en la computadora que desee. Realice sus modificaciones, luego reinicie la computadora sin los medios de arranque de Puppy. Ahora la computadora se iniciará en su sistema alterado sin Puppy.
Soy un poco nuevo en Raspberry Pi, así que no sé cómo arrancarlo desde un dispositivo diferente (unidad de disco), pero probablemente haya una manera. Quizás el sistema Noobs manteniendo presionada la tecla Mayús mientras se inicia.
Agregaré una alternativa simple al arranque desde otra unidad: la Raspberry Pi podría arrancarse desde la instalación de Puppy en una tarjeta SD (o tarjeta microSD) y los medios de instalación originales podrían leerse y modificarse desde un lector de tarjetas conectado a el mismo Raspberry Pi
fuente