dateien im single user mode bearbeiten?

Maxi

Member
hallo,
ich hab vorhin mist gebaut als ich was an meiner shell ändern wollte so dass ich mich nun nicht mehr als root einloggen kann weil die shell nicht mehr gefunden werden kann.
nach ner ausgiebigen google-tour habe ich rausgefunden, dass ich im single user mode booten muss und die passwd ändern.

ABER:
wie kann ich die passwd ändern im single user mode? in der rootshell gibt es kein vi und kein ee... was kann man da machen??
muss doch ne möglichkeit geben dateien zu bearbeiten im single user mode?!

danke
Maxi
 
Du hast sehr wahrscheinlich bloss dein / gemountet und nicht auch noch /usr etc. mit "mount" siehst du was wo gemountet ist. Einfach "mount /usr" eingeben um /usr zu mounten und dein vi resp. ee sollte wieder da sein :) (Beide Programme liegen in /usr und solange /usr nicht gemountet ist stehen sie logischerweise auch nicht zur Verfügung)

PC: schau dir auch "chsh" an, damit kann man auch die Shell wechseln
 
beides richtig :)

bin grad im moment mit hilfe von TheWho draufgekommen. auf das mount-problem bin ich selbst gekommen aber der tipp mit chsh war entscheidend...
die /etc/passwd zu ändern hat nicht gereicht.

danke trotzdem
Maxi
 
Jepp, /etc/passwd zu ändern, das bringt dir in dem Falle gar nichts. Das ist letztendlich nur eine "Informationsdatei" für Programme, die Informationen über den aktuellen Benutzer auslesen wollen. Das System selbst bezieht daraus keine Informationen.

Wirklich wichtig ist als Eingabedatei (immer noch nicht als eigentliche Paßwortdatenbank!) die /etc/master.passwd. Bei der Anmeldung wird aber auch nicht diese, sondern spezielle Datenbanken namens /etc/spwd.db und /etc/pwd.db befragt. Diese beiden Datenbanken werden mittels pwd_mkdb(8) aus der /etc/master.passwd erstellt.

Du mußt also erst die /etc/master.passwd ändern und anschließend pwd_mkdb aufrufen, damit etwas an den Paßwortdatenbanken geändert wird.

Natürlich gibt es für diesen Vorgang auch Frontends, wie z.B. das genannte chsh(1). Alternativ gibt es auch den Befehl vipw(8). Der zeigt erst die /etc/master.passwd in $EDITOR an, führt nach dem Abspeichern einfache Plausibiliätstests durch, aktualisiert anschließend die /etc/passwd und baut die Paßwortdatenbank neu.
 
Zurück
Oben