Não é possível tornar o ZSH o shell padrão

75

Estou tentando definir o ZSH como meu shell padrão, mas ele continua revertendo para o bash.

Eu tentei este código:

sudo chsh -s $(which zsh)

Eu também tentei:

sudo chsh -s /bin/zsh 

Também tentei esses comandos sem sudo. Alguma idéia sobre o que mais eu preciso fazer. Ao executar o ZSH a partir do bash, ele é carregado e funciona bem, mas eu gostaria de configurá-lo como o shell padrão.

    
por Tom 05.05.2012 / 04:42

5 respostas

136

Se você usar sudo , o shell não será alterado para o usuário que está trabalhando, mas para root . Apenas usando

chsh -s $(which zsh)

sem sudo deve funcionar.

Por fim, saia do seu computador e faça login novamente.

    
por Florian Diesch 05.05.2012 / 05:55
31

Eu encontrei isso em superusuário fórum

Abra / etc / passwd:

sudo vi /etc/passwd

Encontre a linha com seu nome de usuário:

username:x:1634231:100:Your Name:/home/username:/bin/bash

e substitua o bash por zsh:

username:x:1634231:100:Your Name:/home/username:/bin/zsh

Efetue logout e faça login novamente para que as alterações entrem em vigor.

    
por Shailesh Kalamkar 11.08.2015 / 07:29
3

Se zsh não for / bin / zsh, o chsh não funcionará. No Ubuntu é / usr / bin / zsh. assim fazendo, chsh -s /usr/bin/zsh ou chsh -s 'which zsh' devem funcionar. Também é necessário fazer login novamente na sessão da área de trabalho.

    
por jbp 27.01.2014 / 01:58
1

Você também pode fazer isso:

abra seu arquivo bashrc no seu editor favorito

sudo nano ~/.bashrc

adicione a linha abaixo do topo do arquivo

exec zsh

Ele irá executar o comando toda vez que você carregar o terminal e executar o seu shell zsh.

    
por Saddam H 11.03.2016 / 16:10
0

Estranho, a resposta "aceita" não funcionou para mim quando cheguei

chsh: PAM: Authentication failure

Para resolver esse problema, edite seu / etc / passwd e verifique se ele aponta para o local do zsh. (Você pode encontrar isso executando "which zsh") No meu caso, meu usuário chamado "webmaster" ficou assim:

webmaster:x:1001:1001:webmaster,,,:/var/www/webmaster:/usr/bin/zsh
    
por John Crawford 19.12.2014 / 14:59