AIX - como alterar o shell do usuário para bash?

AIX - como alterar o shell do usuário para bash?

Quero saber como posso executar bashautomaticamente ao efetuar login em meu servidor AIX. Como posso fazer isso sem precisar digitar bashtoda vez que efetuo login em meu servidor AIX?

Responder1

Você normalmente executaria chsh(veja por exemploAlterando Shells no IBM AIX). No entanto, se bashnã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 bashdiretamente. 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 1como 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.

informação relacionada