Ich benutze ein Samba4-Domänenkonto, um mich auf meinem Laptop anzumelden. Ich wollte es ausprobieren zsh
, aber da sich mein Benutzer nicht in befindet, konnte /etc/passwd
ich chsh
meinen Benutzer nicht finden. Kann mir jemand raten, wie ich meine ändern kann login_shell
?
Ich konnte nichts in meinem sehen ldap.conf
, nssswitch.conf
oder irgendetwas /etc/pam.d
, was geholfen hat ...
Als ich auf den Domänencontroller schaute, dachte ich, ich könnte vielleicht das Samba-Tool verwenden, aber ich sah nichts in der Hilfe, was mich in die richtige Richtung wies ...
getent passwd `id -un` | sudo tee -a /etc/passwd
. Ich bin mir nicht sicher, ob es in allen Shells funktioniert, aber zumindest bash und tcsh sind in Ordnung.Ich hatte genau das gleiche Problem. Da nicht auf allen Rechnern in meiner Domain zsh installiert ist und nicht alle Benutzer betroffen sein sollen, habe ich am Ende meine .bashrc-Datei eingefügt:
Das mag zwar unelegant sein, aber es erledigt zumindest die Arbeit.
quelle
/usr/bin/zsh
zu verwendenexec /usr/bin/zsh
, denbash
Shell-Prozess durch denzsh
Shell-Prozess zu ersetzen ?Wenn Sie zum Bearbeiten der Samba-Domänencontrollerkonfiguration berechtigt sind, können Sie die folgende Eigenschaft festlegen, mit der Sie die Shell in smb.conf festlegen können
Ich bin mir nicht sicher, was passiert, wenn Sie sich auf einem Computer anmelden, auf dem zsh nicht installiert ist (nicht alle Distributionen haben standardmäßig zsh installiert), aber ich vermute, dass dadurch die Distribution-Standardshell aufgerufen wird.
Wenn Sie es einfach ausprobieren möchten, geben Sie einfach zsh ein, um eine Subshell zu erhalten, die Sie sicher bereits kennen.
quelle
zsh
installiert haben. Ich bin mir nicht sicher, ob Sie dies auf einen bestimmten Benutzer beschränken können, aber ich würdeidmap uid
Parameter überprüfen , mit denen Sie dies möglicherweise tun können.