Quero saber como posso executar bash
automaticamente ao efetuar login em meu servidor AIX. Como posso fazer isso sem precisar digitar bash
toda vez que efetuo login em meu servidor AIX?
Responder1
Você normalmente executaria chsh
(veja por exemploAlterando Shells no IBM AIX). No entanto, se bash
não estiver listado nesses arquivos, você poderá quebrar seu login:
- /etc/conchase
- /etc/security/login.defs
Como solução alternativa, você pode fazer com que o script de inicialização de login do seu shell seja executado bash
diretamente. Isso funcionaria se o seu shell fosse csh
, por exemplo, modificando .login
.
Se o seu shell de login for ksh
, isso é um pouco mais difícil: o ksh do AIX usa .profile
(que é usado por outros shells) e não configura variáveis especiais. Algo assim pode funcionar para você, em .profile
:
[ $SHLVL = 1 ] && exec bash
Tanto o ksh quanto o bash definem esta variável; deve ser 1
como você acabou de fazer login e incrementado quando você transfere para o bash.
Ao experimentar coisas como esta, éimportanteter um shell funcionalsobrea máquina remota e teste os logins usando uma conexão diferente, caso haja algum problema com suas edições.
Responder2
Thomas me lembrou disso. Eu uso vários servidores AIX e nem todos os servidores possuem bash. Eu prefiro o bash. Coloquei isso no meu .profile.
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
Responder3
Caso contrário, está usando o utilitário 'usuário smitty' com permissão de root.
Vá em "Alterar características de um usuário"
Digite o nome de usuário e verifique o valor no campo "Programa Inicial".
Sobre isso, você pode alterar conforme considerar (/usr/bin/xxxx).
Edu.