![AIX – wie ändere ich die Benutzer-Shell auf Bash?](https://rvso.com/image/1451211/AIX%20%E2%80%93%20wie%20%C3%A4ndere%20ich%20die%20Benutzer-Shell%20auf%20Bash%3F.png)
Ich möchte wissen, wie ich bash
es automatisch ausführen kann, wenn ich mich bei meinem AIX-Server anmelde. Wie kann ich das tun, ohne es bei bash
jeder Anmeldung bei meinem AIX-Server eingeben zu müssen?
Antwort1
Normalerweise würden Sie ausführen chsh
(siehe zum BeispielÄndern von Shells unter IBM AIX). Wenn es jedoch bash
nicht in diesen Dateien aufgeführt ist, kann Ihr Login beschädigt werden:
- /etc/shellsUnd
- /etc/security/login.defs
Als Workaround können Sie das Login-Initialisierungsskript Ihrer Shell bash
direkt ausführen lassen. Das funktioniert csh
beispielsweise, wenn Ihre Shell ist, indem Sie ändern .login
.
Wenn Ihre Login-Shell ist ksh
, ist das etwas schwieriger: AIXs ksh verwendet .profile
(was auch von anderen Shells verwendet wird) und setzt keine speziellen Variablen. So etwas könnte für Sie funktionieren, in .profile
:
[ $SHLVL = 1 ] && exec bash
Sowohl KSH als auch Bash legen diese Variable fest. Sie sollte beim 1
Anmelden so sein und beim Wechsel zu Bash erhöht werden.
Wenn man mit solchen Dingen experimentiert, ist eswichtigeine funktionsfähige Hülle habenAnden Remotecomputer und testen Sie die Anmeldungen über eine andere Verbindung, falls bei Ihren Änderungen ein Problem auftritt.
Antwort2
Thomas hat mich daran erinnert. Ich verwende mehrere AIX-Server und nicht alle Server haben Bash. Ich bevorzuge jedoch Bash. Ich habe dies in mein .profile eingefügt.
case $- in
*i*)
# Interactive session. Try switching to bash.
if [ -z "$BASH" ]; then # do nothing if running under bash already
bash=$(command -v bash)
if [ -x "$bash" ]; then
export SHELL="$bash"
exec "$bash"
fi
fi
esac
Antwort3
Andernfalls verwenden Sie das Dienstprogramm „smitty user“ mit Root-Berechtigung.
Gehen Sie zu „Eigenschaften eines Benutzers ändern“.
Geben Sie den Benutzernamen ein und überprüfen Sie den Wert im Feld „Anfangsprogramm“.
Hier können Sie nach Belieben Änderungen vornehmen (/usr/bin/xxxx).
Erziehl.