Sudo su problema no Ubuntu 14.04 lts: / root / zsh não pode ser encontrado

1

Eu recentemente re-instalei o 14.04 lts do ubuntu e instalei meu shell favorito (zsh), mas estou tendo um problema agora.

Quando eu digito, sudo su volta com um erro indicando que /root/zsh não pode ser encontrado.

Não tenho certeza do que preciso fazer para corrigir isso, pois é a primeira vez que recebo esse erro ao usar este sistema.

Além disso, quando faço isso, sudo chsh -s /bin/zsh

Eu obtenho

PAM_AUTHENTICATION failed

Qualquer ajuda seria apreciada.

    
por Bryce 18.04.2014 / 21:48

1 resposta

2

su executa seu shell de login conforme indicado no banco de dados de login. Isso é /root/zsh , que não existe, então o comando su falha.

chsh só aceita alterar o shell de um usuário que atualmente possui um shell válido (listado em /etc/shells ). Como /root/zsh não é aceito, chsh falha. O usuário root pode alterar o shell de qualquer pessoa, mas esse teste é feito após a verificação de validade do shell atual.

No entanto, o sudo não se importa com o seu shell de login (a menos que você execute sudo -s ou sudo -i ). Portanto, você tem diversas maneiras de reparar seu sistema: sudo /bin/zsh fornece um shell, no qual é possível executar vipw e corrigir a entrada para raiz. Você pode até executar sudo vipw diretamente.

Eu recomendo iniciar um shell de root em um terminal e fazer a mudança de configuração em outro terminal. Não saia do shell de raiz até confirmar que o sistema está de volta ao estado de funcionamento testando que sudo -i ou sudo su funciona.

    
por 19.04.2014 / 00:28