Meu servidor web foi violado por alguém que estava usando o zsh shell. Eu me sinto mais confortável usando o bash shell, pois esses são os padrões que acompanham o Ubuntu e o OS X (os dois principais sistemas operacionais que eu uso). Mas essas perguntas estão focadas no servidor Ubuntu. Eu tenho 4 sites rodando neste servidor web, uso byobu, uso tmux, uso ruby / ruby on rails, node.js, apache, alguns daemons. Se eu alternar o shell raiz atual do zsh para o bash, poderia haver efeitos colaterais negativos que podem resultar dessa opção? Por exemplo, os processos serão eliminados porque o processo pai (o shell) foi alterado?
command-line
bash
zsh
JohnMerlino
fonte
fonte
Respostas:
Alterar seu shell, via
sudo chsh --shell=/bin/bash $USER
alterará o campo shell em/etc/passwd
. Esse valor é consultado apenas no momento do login, quando o sistema não tem idéia de qual shell usar para você.Processos em execução, se iniciados por
zsh
,bash
apache
ouevil_overlord's_program
não serão afetadosfonte
login
programa é executado em um processo, como tudo. Quando o deixa entrar, ele cria outro processo com seu UID, etc, e executa / bin / bash (em / etc / passwd). O shell bash lê de STDIN (configurado porlogin
) e bifurca / executa comandos não internos, aguarda o término e executa um loop para obter mais comandos. A idéia de "terminal de controle" não é útil no Unix / Linux.Resposta do estouro de pilha ( alternando de zsh para bash ):
fonte
Abra seu terminal e use o seguinte comando:
fonte
which bash
daria o caminho absoluto debash
, então seria o mesmo se/bin/bash
fosse ondebash
estava localizado.No Mac OS Catalina
Mude para zsh:
Mude para bash:
fonte