Wie kann ich die Shell in Ubuntu ändern? [Duplikat]


87

Diese Frage hat hier bereits eine Antwort:

Ich habe einen Ubuntu Server VPS und möchte ihn /bin/bash/als meine Shell verwenden. Wie kann ich meine Shell ändern? Ich habe root-Zugriff, arbeite aber nicht als root. Dash ist jetzt meine Standard-Shell.

Ich habe gelesen, wie ich Bash zu meiner Standard-Shell unter Ubuntu mache. und chshNähte sind der bevorzugte Weg. Aber wenn ich tippe, chsh /bin/bashbekomme ich diese Nachricht: chsh: unknown user /bin/bash

Und wenn ich nur /bin/bashdie Bash-Schalennähte eintippe, funktioniert das einwandfrei. Wie kann man das ändern?

Antworten:


85

Verwenden Sie zum Ändern einer Shell den chshBefehl bare . Dies fordert Sie zur Eingabe der neuen Shell auf. Sie müssen nichts als root ausführen.


Ah, das war noch besser!
— Jonas

8
Vergessen Sie nicht, sich abzumelden und wieder anzumelden, um die Änderung zu sehen.
— Driftcatcher

26
Funktioniert nicht als normaler Benutzer: $ chsh Sie dürfen die Shell für 'Benutzer' nicht ändern.
— Henning

1
Funktioniert bei mir. Klingt so, als ob Ihr System absichtlich gesperrt wurde.
— Michael Cole

1
Ich benutze ssh, aber chsh fragt mich nach einem Passwort, das ich nicht kenne. Wie kann man das umgehen?
— Qwerty

113

Wenn Sie als root ausgeführt werden, können Sie die chshShells anderer Benutzer ändern. Die Syntax möchten Sie dabei verwenden. Sie können Ihre eigene Shell ohne Root-Rechte ändern.

chsh -s /bin/bash username


10
-1 chsh muss nicht als root ausgeführt werden, um die eigene Shell zu ändern . Das Ändern der Muscheln anderer erfordert root.
— Broam

2
Das hat funktioniert. Ich erhalte immer die Fehlermeldung "Sie dürfen die Shell nicht ändern für ...".
— Setzamora

2
Melden Sie sich ab und wieder an, um die Änderung zu beobachten
— smac89

1
+1 Ich fand das funktioniert, nachdem ich den chshBefehl ausprobiert habe, als ich als Benutzer angemeldet war und "Sie dürfen die Shell nicht ändern für ..."
— therobyouknow

54

Sie können Ihre Standard-Shell für Ihren Benutzer mit dem Befehl usermod ändern.

sudo usermod -s <shell> <username>

Ersetzen Sie durch den Namen der Shell, die Sie verwenden möchten (z. B. / bin / bash), und durch den Benutzernamen, für den Sie ihn ändern möchten.

Dadurch wird die Standard-Shell für den in der Datei / etc / passwd ausgewählten Benutzernamen festgelegt.


10
Verwenden usermodSie, wenn Sie sehen "chsh Sie dürfen die Shell nicht ändern für ..."
— Xeoncross

2
Stimmabgabe, da chsh für mich in der Tat nicht funktioniert hat. Vielen Dank!
— Mixaz

Wichtig zu beachten, dass usermoderfordertsudo
— ARun32
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.