Eu instalei o zsh e mudei o shell root /bin/bash para /usr/bin/zsh. Então reiniciei e digitei sudo su. Ele disse "Não é possível executar a ajuda: nenhum arquivo ou diretório". Então, digitei sudo bash. No entanto, quando digitei "echo $SHELL", ele disse que o shell raiz é 'ajuda'. Como posso consertar isso?
A mensagem de erro
Cannot execute help: No such file or directory
indica que o shell de login do root foi definido emhelp
vez de um shell válido.Você pode corrigir isso emitindo o
chsh
comando correto:ou editando o registro de login do root em
/etc/passwd
. Este arquivo deve ser editado comvipw
(nunca diretamente):Na maioria dos sistemas Linux, a entrada do root no arquivo que abre no editor quando você usa
vipw
deve ser algo comoVocê deve certificar-se de que o último
:
campo -delimited é o caminho correto para o shell de login para root em seu sistema e alterá-lo no editor se não for. Em seguida, salve o arquivo e saia.Observe que não há absolutamente nenhum benefício em alterar o shell de login do root, pois você não deve se conectar como root ou usar um shell de root interativo por qualquer período de tempo.
Quaisquer tarefas administrativas que você precise executar no sistema podem ser executadas usando
sudo
seguido pelo comando que você precisa executar.Além disso, não há necessidade de usar
su
comsudo
. Isso é discutido nas respostas à pergunta Existe algum bom motivo para executar o sudo su?