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.
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.
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.
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.
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.
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.
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
Tags command-line bash zsh