Eu estava editando meu /etc/sudoers
arquivo e o salvei, mas há um erro de sintaxe. Agora não posso, sudo vim /etc/sudoers
porque o sudo acha que o arquivo sudoers não é válido.
Como posso consertar isso?
Eu estava editando meu /etc/sudoers
arquivo e o salvei, mas há um erro de sintaxe. Agora não posso, sudo vim /etc/sudoers
porque o sudo acha que o arquivo sudoers não é válido.
Como posso consertar isso?
Respostas:
Inicialize o sistema no modo único e edite-o.
Você nunca deve editar seu arquivo sudoers diretamente. Use visudo
- ele o protegerá contra esses erros de sintaxe no futuro.
Para se recuperar dessa situação, inicialize no modo de usuário único e edite o arquivo ou inicialize em um livecd e faça o mesmo.
Conforme observado nesta pergunta semelhante no askubuntu , isso pode funcionar sem a necessidade de reiniciar no modo de usuário único:
pkexec visudo
A propósito, se você tiver a senha root, faça o login e volte a configurá-la como era antes.
chmod 0440 / etc / sudoers
Isso evitará que você inicialize no modo de usuário único ou, pior, inicialize a partir de um livecd.
No meu caso, eu não podia permitir o desligamento do servidor.
Se você tiver o Docker instalado e seu usuário for um membro do docker
grupo, poderá sair facilmente desse problema (e de alguns outros) sem precisar reiniciar ou o que você tem:
$ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
apt-get update && apt-get install [vim|nano|whatever]
cd ~/host.etc/
exit
pkexec
por algum motivo, também não estiver disponível, isso fornece um método alternativo, sem reiniciar, que é quase tão rápido e simples.