Raspbian par défaut est configuré pour que le compte root ne puisse pas être connecté à l'aide d'un mot de passe. Cela se fait en commençant par une entrée dans /etc/password
laquelle commence:
root:x:0:0:
Les champs sont séparés par des deux-points et expliqués dans man 5 passwd
(notez le 5
, car man passwd
vous donnera la page de manuel de la commande passwd
; la section 5 est pour les fichiers de configuration, et dans ce cas ils ont le même nom). Ici, le premier est le nom ( root
), les troisième et quatrième sont les uid et gid numériques (les deux 0
), et le second est pour le mot de passe. Pour la plupart des entrées ce sera x
, en indiquant le mot de passe réel est dans un autre fichier, /etc/shadow
.
Notez que "le mot de passe réel" n'est vraiment stocké nulle part. Ce qui est stocké shadow
est un hachage unidirectionnel du mot de passe réel. Un hachage unidirectionnel est le résultat d'un processus qui produira toujours la même chose (permettant de vérifier votre mot de passe), mais est irréversible. En d'autres termes, si quelqu'un met la main sur shadow
, il n'y a aucun moyen de déduire le mot de passe du hachage. Cependant, s'ils peuvent modifier shadow
, ils peuvent évidemment désactiver ou changer ce qui fonctionnera comme mot de passe. Mais ils ne pourront jamais découvrir vos mots de passe. C'est pourquoi même root
ne peut pas faire cela (bien que root puisse toujours les changer en quelque chose d'autre sans avoir besoin de l'original).
Dans le cas de root, l'entrée dans shadow
commence comme ceci, comme pour la plupart des autres comptes système:
root:*:
Le *
indique qu'il n'y a actuellement aucun mot de passe possible qui pourrait être utilisé pour ce compte.
L'utilisateur root peut changer cela, cependant, en utilisant la passwd
commande pour définir un nouveau mot de passe, qui remplacera le *
avec le hachage mentionné précédemment (ceux - ci commencent toujours $n$
où n
est une valeur aléatoire qui est utilisée comme « sel » pour le hachage, mais vous n pas besoin de comprendre ça).
Quoi qu'il en soit, lorsque je configure une carte à partir d'une nouvelle image, la première chose que je fais est d'aller dans /etc/passwd
et de supprimer l' x
entrée de root donc commence maintenant:
root::0:0
Remarquez qu'il n'y a plus de deuxième champ. Cela signifie qu'il n'y a pas de mot de passe et tout ce que vous avez à faire est de taper root
à l'invite de connexion et vous êtes connecté en tant que root
. Vous pouvez ensuite utiliser passwd
pour en définir un.
Donc, vous avez deux choix ici, mais ils nécessitent tous deux de retirer la carte du pi et d'accéder à la deuxième partition à partir d'un autre système (qui peut lire / écrire des partitions ext4).
Restaurer sudoers
. Si vous avez une image de référence, c'est facile, vous pouvez simplement la remettre comme elle était en la remplaçant. Sinon, c'est l'option la plus compliquée car vous devez savoir ce que vous faites (et votre bilan avec sudoers
n'est pas si bon ...).
Modifiez /etc/passwd
et supprimez cela x
comme décrit ci-dessus, remettez la carte, connectez-vous en tant que root
, créez un mot de passe. Bien sûr, vous devrez toujours le réparer sudoers
, mais les essais et erreurs seront facilités car si vous l'êtes vraiment root
, vous pourrez toujours y accéder.
Si vous n'avez pas de système qui peut accéder aux systèmes de fichiers ext4 (un "live CD" Debian est un bon choix ici), alors vous êtes bloqué. Vous devrez reflasher la carte et recommencer.
/etc
. Si cesudoers
n'est pas le cas, vous l'avez peut-être accidentellement supprimé, auquel cas vous devrez le remplacer à partir d'une nouvelle image Debian (vous n'avez pas besoin de créer une nouvelle carte, vous avez juste besoin du fichier image, voir ici ). .etc/passwd
à la carte et la modifier via le compte root de la Debian VM.Raspbian n'a PAS de
root
mot de passe. Il diffère d'Ubuntu à cet égard. Vous pouvez créer unroot
mot de passe, mais AFAIK qui l'exigesudo
.Le mieux est d'éditer les fichiers en montant la carte SD sur une machine Linux.
Cela peut être fait sur le Pi si 1. vous avez un lecteur de carte SD 2. Vous utilisez un bon OS sur une autre SD pour démarrer le Pi.
la source
Pour définir un mot de passe root:
sudo passwd root
Source: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25
la source
Si vous téléchargez Puppy Linux pour Raspberry Pi depuis http://puppylinux.org/main/Download%20Latest%20Release.htm#quirky et l'installez sur une clé USB, vous devriez pouvoir démarrer votre ordinateur à partir de cela, et parce que Puppy a toujours fonctionne en tant que root sans mot de passe, vous pouvez changer quoi que ce soit sur l'ordinateur que vous souhaitez. Faites vos modifications, puis redémarrez l'ordinateur sans le support de démarrage Puppy. Maintenant, l'ordinateur démarrera dans votre système modifié sans Puppy.
Je suis un peu nouveau sur Raspberry Pi, donc je ne sais pas comment le démarrer à partir d'un autre appareil (clé USB), mais il y a probablement un moyen. Peut-être le système Noobs en maintenant la touche Maj enfoncée lors du démarrage.
J'ajouterai une alternative simple au démarrage à partir d'un autre lecteur: le Raspberry Pi pourrait plutôt être démarré à partir de l'installation Puppy sur une carte SD (ou carte microSD) et le support d'installation d'origine pourrait être lu et modifié à partir d'un lecteur de carte branché le même Raspberry Pi.
la source