Ich habe gerade einen neuen Benutzer auf meinem System mit useradd -d /home/users/john -m john
(Using Ubuntu 11.04) erstellt. Das hat gut funktioniert, aber als ich zu gewechselt habe john
, ist meine Bash nicht voll funktionsfähig. Das heißt, es gibt keine Autovervollständigung, ich kann nicht die Pfeiltasten verwenden (z. B. UP, um den letzten Befehl abzurufen), und anstatt mein aktuelles Verzeichnis anzuzeigen, wird nur angezeigt $
. Ich habe ein geladen, .bashrc
aber dies scheint völlig ignoriert zu werden. Was könnte das verursachen?
PD: Dieser Benutzer arbeitet bereits am System und ich entferne es lieber nicht und füge es, wenn möglich, erneut hinzu.
su
odersu -
?Antworten:
Wahrscheinlich ist Johns Shell nicht
/bin/bash
, aber/bin/sh
. Unter Ubuntu ist dies eine Shell, die Skripte schnell ausführen soll, ohne ausgefallene interaktive Funktionen wie die Befehlszeilen-Edition. Überprüfen Sie die letzte Spalte vongrep john /etc/passwd
odergetent passwd john
. Möglicherweise möchten Sie ausführenchsh -s /bin/bash john
, um die Shell des Benutzers zu ändern.quelle
/bin/sh
gibt es symbolische Verknüpfungen zudash
zB/bin/dash
, so dass letztendlich die Shell des Benutzers ist/bin/dash
.Sie können zwischen den Shells wechseln, indem Sie den Namen des Shells eingeben
und in der nächsten Zeile erhalten Sie diese folgende Eingabeaufforderung
Das ist die Bash Shell. Ihre Nach-oben-Taste und die Autovervollständigung funktionieren jetzt
quelle