Wenn das root-Password vergessen wurde
Wenn man das root-Passwort vergessen hat muss man nicht gleich das ganze System neu aufsetzen..Man kann das verlorene Passwort zwar nicht mehr herausfinden, aber es gibt ein paar Tricks mit denen man das Passwort in den meisten Fällen ändern kann. In dieser Anleitung werde ich 3 Methoden beschreiben, mit denen man relativ leicht und ohne besondere Linux-Kenntnisse das root-Passwort ändern kann ohne es zu kennen.
- Methode 1: In den Einzelbenutzermodus starten
- Methode 2: In eine Konsole starten
- Methode 3: Passwort mit einer LiveCD ändern
- Methode 4: Speziell für den RaspberryPI
Code: Alles auswählen
mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
[...]
(Hinweis: Der Gerätename fängt immer mit /dev/ an)
Nun zum eigentlichen Teil dieser Anleitung
Methode 1: In den Einzelbenutzermodus starten
Die einfachste Methode besteht darin einfach in den Einzelbenutzermodus zu starten indem man “single” an die Boot-Optionen anhängt. Manche Distributionen bieten das als “Recovery Mode” o.Ä. an, bei manchen Distributionen wird diese Methode allerdings nicht funktionieren weil vorher das root-Passwort verlangt wird, welches man ja nicht mehr weiß... Aber da es die einfachste Methode ist kann man es ja trotzdem einfach mal versuchen
Wenn man den Rechner einschaltet wird meistens nach kurzer Zeit das Startmenü vom Bootloader angezeigt, wo man auswählen kann welches Betriebssystem man starten möchte oder ob man evtl. in einen Wartungsmodus starten will. Eventuell wird auch anstatt des Startmenüs sowas angezeigt:
Durch drücken der Escape-Taste gelangt man dann zum Startbildschirm/Menü. In diesem Menü ist es möglich dem Betriebssystem noch einige Optionen beim Start mitzugeben.GRUB loading, please wait ...
Press ESC to enter menu ...
Benutzer von LinuxMint haben es hier besonders leicht: Einfach den “recovery mode” starten und dort drop to root shell prompt auswählen (dann mit Schritt 3 weitermachen). Benutzer anderer Distributionen gehen wie folgt vor:
1.
Bei manchen Distributionen (z.B. openSUSE, LinuxMint) befindet sich unten eine Eingabezeile in der zusätzliche Boot-Optionen eingetragen werden können. Dort trägt man einfach single hinter den anderen Optionen ein und drückt dann die Eingabetaste um das System in den Einzelbenutzermodus zu starten.
Wenn man diese Eingabezeile nicht hat tut man folgendes:
1) Den Eintrag auswählen den man normalerweise auch zum Starten benutzt.
2) e drücken, und mit den Pfeiltasten zu der Zeile gehen die mit »kernel« anfängt.
3) Wieder e drücken, und am Ende der Zeile single hinzufügen.
4) Dann mit der Eingabetaste bestätigen und b drücken um das System zu starten.
Nun wird Linux gestartet und man landet bei einer Eingabeaufforderung. Wenn Linux nun nach dem Passwort fragt wird diese Methode nicht funktionieren, denn das Passwort kennt man ja nicht mehr.
In dem Fall sollte man eine andere Methode versuchen. Ansonsten geht es weiter zu Schritt 2.
2.
Wahrscheinlich ist das die Partition auf der sich das Stammverzeichnis / (auch Wurzelverzeichnis oder Root-Verzeichnis genannt) befindet noch als nur lesbar eingebunden. Es muss als les- und schreibbar eingebunden werden um das Passwort zu ändern
Code: Alles auswählen
mount -o remount, rw /
Code: Alles auswählen
mount -o remount, rw <Gerätename> /
Wenn nun password updated successfully da steht wurde erfolgreich ein neues Passwort festgelegt. Jetzt muss das Dateisystem wieder nur-lesbar eingebunden werden:root@(none):/# passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Code: Alles auswählen
mount -o remount,ro /
Methode 2: In eine Konsole starten
Man kann den Kernel beim Start anweisen anstatt des normalen Init-Systems einfach eine Shell zu starten. Dort ist man dann automatisch als root eingeloggt, nach dem Passwort wird nicht gefragt
Hier verfährt man eigentlich genau so wie bei Methode 1, nur mit dem Unterschied das man nicht single an die Boot-Optionen anhängt sondern init=/bin/bash
Ansonsten tut man genau das was in Methode 1 beschrieben wird
Achtung: Möglicherweise ist nicht die deutsche, sondern die US Tastenbelegung aktiviert. Um ein = zu bekommen muss man die ‘-Taste (zwischen ? und der Backspace/Löschen-Taste) drücken. Für ein / drückt man die – Taste. In Wirklichkeit gibt man also folgendes ein: init‘-bin-bash
Methode 3: Passwort mit einer LiveCD ändern
Wenn die anderen beiden Methoden nicht funktionieren kann man auch eine LiveCD (Knoppix, Damn Small Linux, etc.) starten, mit chroot zum Rootverzeichnis des richtigen Systems zu wechseln und mit passwd das Passwort wechseln.
1. ist öffnet man eine Konsole in der man sich erst einmal mit su root-Rechte beschafft. Dann wird ein Einbindepunkt für das Stammverzeichnis von Linux erstellt
Code: Alles auswählen
su
mkdir /mnt/linux
Code: Alles auswählen
mount <Hier Gerätename einfügen> /mnt/linux
chroot /mnt/linux
passwd
<Neues Passwort eingeben>
exit
Methode 4: Speziell für den RaspberryPI
Wenn ihr euer Password vergessen habt aber die SD nicht neu flashen wollt, bleibt euch nur die Möglichkeit in einen speziellen Modus zu booten. Dazu müsst ihr die SD Karte in euren Kartenleser stecken und die cmdline.txt bearbeiten.
Normalerweise sieht die Zeile in der cmdline.txt so aus:
Code: Alles auswählen
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
Code: Alles auswählen
init=/bin/sh
Code: Alles auswählen
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait init=/bin/sh
Code: Alles auswählen
mount -o remount,rw /
passwd pi
Danach müsst ihr noch folgende Befehle ausführen/eingeben:
Code: Alles auswählen
sync
exec /sbin/init
Fertig