Root-Password verloren (OpenSuse) — was tun?
Durch eine elegante Fehlfunktion in /dev/brain0 habe ich leider mein Root-Password verloren. Jetzt versuche ich, den Anweisungen zu folgen, um wieder Zugang zu erhalten (User-Password ist glücklicherweise vorhanden). Aber es will sich kein Erfolg einstellen.
Wenn ich das richtig verstehe, dann gibt es zwei Möglichkeiten: Entweder durch Boot vom USB-Stick, oder brutal durch Eingriff in den Bootvorgang (grub).
Ersteres scheidet aus, weil ich nicht weiß, wie ich mir aus dem openSUSE-Leap-42.3-DVD-x86_64.iso einen bootfähigen Stick basteln kann. Hinweise willkommen.
Daneben gibt es die Option, in einen single-user mode zu booten. Dazu muß man grub irgendwie dazu bringen, daß ich eine Bootoption hinzufügen kann. Die Beschreibung meint dazu:
If you don't see either a LILO or GRUB boot screen, try hitting CTRL-X to get one. If it's LILO, just type "linux single" and that should do it (assuming that "linux" is the lilo label). If text mode GRUB, hit 'e", then select the "kernel" line, hit "e" again, and add " single" (or just " 1") to the end of the line.
Beim Booten sehe ich folgendes Boot-Menü:
Ich probiere es also mit den Advanced Options
und nehme mir dort irgendwas mit recovery. Laut obiger Anweisung soll ich wohl e tippen (a tut nichts), und dann bekomme ich das
angeblich soll ich jetzt eine kernel line selektieren, aber ich finde keine. Dafür kann ich mit CONTROL-C in einen command-line mode wechseln, in dem weder kernel noch single irgendeine ernsthafte Reaktion zeigt.
Und damit bin ich am Ende. Hat jemand eine Ahnung, an welcher Stelle ich vom richtigen Pfad abgebogen bin? Oder was ich sonst tun könnte?
3 Antworten
angeblich soll ich jetzt eine kernel line selektieren, aber ich finde keine.
Das ist die Zeile, die auf dem Screenshot mit "linuxefi" anfängt, etwa im unteren Viertel des Bildschirms.
Danke, das hat geholfen. Die Maschine bootete in den single-user mode und fragte mich nach dem root-Password. ☹
Jetzt probiere ich den Trick mit init=/bin/bash Rückmeldung in Kürze.
Du hast es ja via single, respektive setzen des Initprozesses geeignet hinbekommen. Ergänzend möchte ich noch sagen: Du benötigst natürlich keinen opensuse Bootstick. Ein beliebiges Livesystem zu starten (SystemrescueCD, Knoppix, ...) reicht vollständig aus, um in die Installation zu chrooten.
Ersteres scheidet aus, weil ich nicht weiß, wie ich mir aus dem openSUSE-Leap-42.3-DVD-x86_64.iso einen bootfähigen Stick basteln kann. Hinweise willkommen
Das ist ganz einfach. Rufe die Shell auf, und tippe folgenden Befehl ein:
dd if=<iso image> of=/dev/sdX
ersetze das X bei sdX durch das entsprechende USB-Laufwerk. Wenn Du es nicht kennst, dann kannst Du es unter Linux mit dem Befehl lsblk ermitteln.
Du brauchst dazu root-Rechte. Da du momentan keine hast, würde ich das an deiner Stelle einfach eben an einem anderen Linux-System erledigen.
Im Anschluss einmal sync aufrufen um zu überprüfen, ob auch alles auf den Stick geschrieben wurde. Dann kannst Du davon booten.
Danke für den Hinweis. Muß ich, um den Stick bootbar zu machen, nicht noch irgendwelche Optionen setzen? Und wenn das ISO-File viel kleiner ist als der Stick, kann ich den parallel noch für andere Daten verwenden?
Das wird komplizierter, es sei denn, die Daten sind im Image. Am besten setzt Du dich mal mit der genauen Funktionsweise von dd auseinander. Es ist ein sehr altes Unix-Werkzeug, das aber äußerst nützlich ist.
Jaja, eines von diesen flexiblen Werkzeugen, das alles kann von File mit Nullen überschreiben bis Kaffee kochen. Glücklicherweise bin ich jetzt ja wieder root.
Unix-Werkzeuge sind generell sehr nützlich. Nicht zu vergleichen mit dem Schrott, den man unter Windows angeboten bekommt.
SUCCESS!