Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Wenn das root-Password vergessen wurde

    Nobody is reading this thread right now.
A

aragorn

Guest
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


Alle drei Methoden die ich hier beschreibe haben eins gemeinsam: Man muss den Gerätenamen (zum Beispiel /dev/hda2, /dev/sda4 o.Ä.) der Partition kennen auf der sich das Stammverzeichnis befindet (auch Root-Verzeichnis oder Wurzelverzeichnis genannt, es ist das Verzeichnis mit dem Pfad “/”).
Bei der Installation von Linux werden meistens 2-3 Partitionen angelegt, meistens hat man eine sehr kleine Boot-Partition, eine ebenfalls meist eher kleine Swap-Partition und eine Partition auf der das ganze System installiert wird und auf der die Daten liegen. Den Gerätenamen letzterer muss man kennen. Wenn man diesen nicht kennt kann man diesen mit dem Befehl df oder mount herausfinden, dazu öffnet man einfach eine Konsole und gibt mount oder df ein. Das funktioniert auch als normaler Benutzer, root-Rechte braucht man dazu nicht..

Code:
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)
[...]

Hier sieht man das der Gerätename für / gleich /dev/sda1 ist. Diesen muss man sich merken!
(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:

GRUB loading, please wait ...

Press ESC to enter menu ...

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.

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:
mount -o remount, rw /

Wenn das nicht funktioniert, muss man den Gerätenamen mit angeben
Code:
mount -o remount, rw <Gerätename> /

Jetzt kann man mit dem passwd-Befehl ein neues Passwort setzen. Nicht wundern, das Passwort wird während der Eingabe nicht angezeigt, auch nicht durch Sternchen
root@(none):/# passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Wenn nun password updated successfully da steht wurde erfolgreich ein neues Passwort festgelegt. Jetzt muss das Dateisystem wieder nur-lesbar eingebunden werden:
Code:
mount -o remount,ro /

Danach einfach den Rechner neu starten!



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. Auf der Taste Y ist dann das Z und umgekehrt. 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. zunächst ö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:
su
mkdir /mnt/linux
2. Anschließend wird das Stammverzeichnis eingebunden und mittels chroot in das richtige Linux gewechselt, dort wird dann mit root-Rechten passwd ausgeführt um das Passwort zu ändern:
Code:
mount <Hier Gerätename einfügen> /mnt/linux
chroot /mnt/linux
passwd
<Neues Passwort eingeben>
exit

Jetzt muss der Rechner nur noch neu gestartet werden!




(originally created @ ipc.pebkac.at forum)
 
AW: Wenn das root-Password vergessen wurde

Vom selben Autor nur in einem anderen Forum:

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:
dwc_otg.lpm_enable=0  console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1  root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait


Fügt dort in die Erste Zeile ans Ende, folgendes ein:

Code:
init=/bin/sh


Die veränderte Zeile würde dann also zum Beispiel wie folgt aussehen:

Code:
dwc_otg.lpm_enable=0  console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1  root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait  init=/bin/sh


Datei speichern und wieder in den RaspberryPI stecken sowie anschliesend booten - ihr solltet dann ziemlich schnell einen command prompt erhalten.. Dort gebt ihr folgendes ein:

Code:
mount -o remount,rw /
passwd pi


Jetzt legt ihr ein neues Password für den Benutzer pi fest (es kann aber auch für root geändert werden, dann wäre der Befehl passwd root)
Danach müsst ihr noch folgende Befehle ausführen/eingeben:

Code:
sync
exec /sbin/init


Anschliesend müsste der PI weiter booten und ihr gelangt in euer eigentliches System. Hier angekommen müsst ihr unbedingt die /boot/cmdline.txt bearbeiten und das zuvor eingefügte init=/bin/sh wieder entfernen.

Fertig
Du musst angemeldet sein, um Bilder zu sehen.
 
Zurück
Oben