Uso:
chsh
Digite sua senha e informe o caminho para o shell que você deseja usar.
Para o Bash, isso seria /bin/bash
.
Para Zsh, isso seria /usr/bin/zsh
.
Eu tenho um .bash_profile
no meu diretório inicial, mas ele não está sendo executado no login. Se eu fizer o seguinte, as coisas parecem ser como eu esperava:
ssh myhost
bash
source ~/.bash_profile
Mas normalmente isso acontece no login. Pensamentos?
Você encontrará uma linha como este exemplo:
john:x:1000:1000:john,,,:/home/john:/bin/sh
O shell é especificado no final.
Você pode verificar seu programa de terminal. Pode ser configurado para executar / bin / sh em vez de / bin / bash
O Bash executa o .bash_profile apenas para sessões de login. O .bashrc é executado para todas as sessões bash, não apenas para sessões de login. Tente pesquisar o .bash_profile a partir do .bashrc (evite dependências circulares!) Ou configure seu programa terminal para executar o / bin / bash -l como um programa shell.
Uma alternativa é renomear seu script de inicialização para .profile. Este arquivo está sendo usado pela maioria dos shells Unix .
Ativar o bash:
$ /bin/bash
Alterar shell do usuário:
$ sudo usermod -s /bin/bash username
onde:
-s, --shell SHELL new login shell for the user account
Não há informações suficientes em sua pergunta para dizer com certeza, mas já tive o mesmo problema. Supondo que você já tenha definido / bin / bash na sua entrada de senha, pode ser que o seu terminal seja iniciado.
Se você estiver tentando iniciar um terminal GUI, diga gnome-terminal
, você pode estar esperando que o shell leia seus arquivos de inicialização do bash. No entanto, isso não acontece no Ubuntu e talvez outros sistemas por padrão.
A forma como o consertei no Ubuntu é editar as preferências do gnome-terminal e definir o comando de inicialização como bash -l
. -l
é a abreviação de --login
. Isso diz ao bash para iniciar como shell de login, o que faz com que ele carregue os scripts de inicialização como você obtém ao efetuar login via ssh.
Tenho certeza de que há uma boa lógica para que seja assim, mas achei surpreendente e mais do que irritante compartilhar os mesmos perfis nos sistemas Linux, cyggin e macos.