Raspbian ist standardmäßig so konfiguriert, dass das Root-Konto nicht mit einem Passwort angemeldet werden kann. Beginnen Sie dazu mit einem Eintrag, in /etc/password
dem Folgendes beginnt:
root:x:0:0:
Die Felder werden durch Doppelpunkte voneinander getrennt und erläutert man 5 passwd
(die beachten 5
, da man passwd
Sie für den Befehl in der Manpage geben passwd
, Abschnitt 5 für Konfigurationsdateien ist, und in diesem Fall haben sie den gleichen Namen). Hier ist der erste der Name ( root
), der dritte und vierte die numerische uid und gid (beide 0
) und der zweite ist für das Passwort. Bei den meisten Einträgen wird dies bedeuten x
, dass sich das tatsächliche Passwort in einer anderen Datei befindet /etc/shadow
.
Beachten Sie, dass "das tatsächliche Passwort" nirgendwo wirklich gespeichert ist. Was in gespeichert shadow
ist, ist ein Einweg-Hash des tatsächlichen Passworts. Ein One-Way-Hash ist das Ergebnis eines Prozesses, bei dem immer das gleiche Ergebnis erzielt wird (sodass Ihr Kennwort überprüft werden kann), der jedoch irreversibel ist. Mit anderen Worten, wenn jemand seine Hände in die Hände bekommt shadow
, gibt es keine Möglichkeit, das Passwort aus dem Hash abzuleiten. Wenn sie jedoch Änderungen shadow
vornehmen können, können sie natürlich die Funktion eines Kennworts deaktivieren oder ändern. Aber sie werden niemals in der Lage sein, Ihre Passwörter zu entdecken. Dies ist auch der Grund, warum root
dies nicht möglich ist (obwohl root sie immer in etwas anderes ändern kann, ohne das Original zu benötigen).
In Roots Fall shadow
beginnt der Eintrag in wie folgt:
root:*:
Das *
zeigt an, dass derzeit kein mögliches Passwort für dieses Konto verwendet werden kann.
Der Benutzer root kann dies ändern, aber die Verwendung von passwd
Befehl ein neues Passwort zu setzen, die das ersetzen wird *
mit dem Hash bereits erwähnt (diese immer beginnen , $n$
wo n
einiger Zufallswert ist , das als das „Salz“ für den Hash verwendet wird , aber Sie don muss das nicht verstehen).
Wie auch immer, wenn ich eine Karte von einem neuen Bild aus einrichte, gehe ich als Erstes in den Eintrag /etc/passwd
und entferne den x
Eintrag des Roots:
root::0:0
Beachten Sie, dass es jetzt kein zweites Feld gibt. Das bedeutet, dass es kein Passwort gibt und Sie nur root
an einer Anmeldeaufforderung eingeben müssen und angemeldet sind als root
. Sie können dann verwenden passwd
, um eine festzulegen.
Sie haben hier zwei Möglichkeiten, aber beide erfordern, dass Sie die Karte aus dem pi herausnehmen und von einem anderen System (das ext4-Partitionen lesen / schreiben kann) auf die zweite Partition zugreifen.
Wiederherstellen sudoers
. Wenn Sie ein Referenzbild haben, ist dies ganz einfach. Sie können es einfach so zurücksetzen, wie es war, indem Sie es ersetzen. Ansonsten ist es die kompliziertere Option, da Sie wissen müssen, was Sie tun (und Ihre Erfolgsbilanz sudoers
ist nicht so gut ...).
Bearbeiten /etc/passwd
und entfernen Sie dies x
wie oben beschrieben, legen Sie die Karte wieder ein, melden Sie sich an als root
, erstellen Sie ein Passwort. Natürlich müssen Sie das Problem noch beheben sudoers
, aber das Ausprobieren wird einfacher, da Sie in Wirklichkeit root
immer darauf zugreifen können.
Wenn Sie kein System haben, das auf ext4-Dateisysteme zugreifen kann (eine Debian- "Live-CD" ist hier eine gute Wahl), stecken Sie fest. Sie müssen die Karte erneut flashen und neu beginnen.