Como eu mudo meu shell padrão em um servidor remoto?

5

Eu tentei alterá-lo da maneira recomendada em Como altero meu shell padrão em uma instância do AWS? , conforme mostrado abaixo:

chsh -s $(which zsh)

mas isso me deu um erro. O sistema pede que eu use ypchsh , mas isso me dá uma mensagem de erro:

ypchsh: can't get local yp domain: Local domain name not set

O que posso fazer para definir meu shell remoto como zsh ?

    
por Jakob Weisblat 03.03.2013 / 02:56

1 resposta

4

Você pode entrar em contato com o administrador do sistema e perguntar se ele deve ser suportado e, em caso afirmativo, se deve corrigi-lo.

O que eu faço em um cluster onde a mudança do shell para zsh não é suportado é isso (dentro do meu ~/.bashrc ):

# if this is an interactive shell
if [[ $- == *i* ]]; then
  # if on one of those annoying hosts...
  if [[ 'uname -n' == PATTERN_MATCHING_SOME_HOSTNAMES ]]; then
     # if there is actually a zsh command available
     if [[ -x 'which --skip-alias zsh 2>/dev/null' ]]; then
        # avoid spawning zsh every time bash is started...
        if [ -z $ZSH_STARTED ]; then
            export ZSH_STARTED="true"
            # if the call to zsh fails, scp a different conf there
            exec zsh
        fi
     fi
  fi
fi
    
por 04.03.2013 / 19:36

Tags