Melden Sie sich als root auf dem Ubuntu-Server 14.04 an

596
Jason Huh

Ich habe ein Problem, mich als root anzumelden.
Meine '/etc/passwd'Datei ist wie

root:x:0:0:root:/root:which zsh .... .... 

Ich habe eine ähnliche Frage an "Wie kann ich die Shell für Original (/ bin / bash) ohne Root-Privileg ändern?" und ich habe die vorgeschlagenen Vorschläge, aber bis jetzt funktioniert es nicht.

[]@[]:~$ su - root Password: Cannot execute which zsh: No such file or directory []@[]:~$ su - -s /bin/bash Password: Cannot execute which zsh: No such file or directory []@[]:~$ su - -s /bin/bash root Password: Cannot execute which zsh: No such file or directory []@[]:~$ su -s /bin/bash root Password: Cannot execute which zsh: No such file or directory 

Irgendwelche Vorschläge für diese Situation?

0
Könnten Sie bitte einen Link zur ursprünglichen Frage hinzufügen? Byte Commander vor 9 Jahren 0
Was auch immer diese andere Antwort Ihnen vorschlagen sollte, setzen Sie sie bitte zurück, bevor Sie meine Antwort versuchen. Byte Commander vor 9 Jahren 0

2 Antworten auf die Frage

0
Byte Commander

Verwenden Sie den folgenden Befehl, der /bin/shdurch Ihre bevorzugte Shell ersetzt wird:

SHELL=/bin/sh sudo -s 

Dieser Befehl setzt zunächst die SHELLUmgebungsvariable temporär auf die von /bin/shIhnen gewählte Shell. Dann ruft er auf, sudo -swelche sich in der von der SHELLVariablen definierten Shell anmeldet .

Siehe das Beispiel-Terminalprotokoll. Beachten Sie die psAusgabe, die einmal bashangezeigt wird (meine Standard-Shell) und einmal shals zweiter Prozess in der Hierarchie, sowie die verschiedenen Eingabeaufforderungen.

$ sudo -s root: ~ # ps PID TTY TIME CMD 23103 pts/2 00:00:00 sudo 23104 pts/2 00:00:00 bash 23146 pts/2 00:00:00 ps root: ~ # exit ipc-admin: ~ $ SHELL=/bin/sh sudo -s # ps PID TTY TIME CMD 23190 pts/2 00:00:00 sudo 23191 pts/2 00:00:00 sh 23200 pts/2 00:00:00 ps # exit $ 
Wissen Sie, es gibt keinen Benutzer in der Sudoers-Datei. Also kann ich keine Sudo-Befehle ausführen. :( Jason Huh vor 9 Jahren 0
Kannst du mir bitte den Link zu deiner ursprünglichen Frage geben, damit ich das ursprüngliche Problem verstehen kann? Vielen Dank. Byte Commander vor 9 Jahren 0
0
Hastur

Versuchen Sie, den Runlevel während des Startvorgangs zu ändern und mit Runlevel 1 zu beginnen .
Dann sind Sie root und können jede Datei bearbeiten.

Wenn Sie LILO verwenden, rufen Sie die Eingabeaufforderung boot: auf, indem Sie [Strg] - [X] eingeben. Dann tippen Sie:

linux 1 

Wenn Sie GRUB verwenden, gehen Sie folgendermaßen vor:

  • Wählen Sie im grafischen GRUB-Bootloader-Bildschirm ein Label aus und drücken Sie [e], um es zu bearbeiten.
  • Gehen Sie nach unten zur Kernlinie und drücken Sie [e], um sie zu bearbeiten.
  • Geben Sie an der Eingabeaufforderung die Nummer des Runlevel ein, in den Sie booten möchten (1 bis 5), oder geben Sie die Wörter "single" oder "emergency" ein und drücken Sie die Eingabetaste. In Ihrem Fall 1
  • Der GRUB-Bildschirm erscheint wieder mit den Kernelinformationen. Drücken Sie die Taste [b], um das System zu starten.

Wenn Sie sich im Einzelbenutzermodus befinden, sind Sie root. Verwenden Sie vi(oder nanooder pico...) und korrigieren Sie Ihre /etc/passwdDatei.

Referenz: