J'étais en train de modifier mon /etc/sudoers
fichier et je l'ai enregistré, mais il contient une erreur de syntaxe. Maintenant, je ne peux pas sudo vim /etc/sudoers
parce que sudo pense que le fichier sudoers n'est pas valide.
Comment puis-je réparer cela?
Réponses:
Démarrez le système en mode unique, puis modifiez-le.
la source
Vous ne devez jamais modifier votre fichier sudoers directement. Utilisation
visudo
- il vous protégera de ces erreurs de syntaxe à l'avenir.Pour récupérer de cette situation, démarrez en mode mono-utilisateur et modifiez le fichier ou démarrez à partir d'un livecd et faites de même.
la source
Comme indiqué dans cette question similaire sur askubuntu , cela peut très bien fonctionner sans avoir à redémarrer en mode mono-utilisateur:
la source
Soit dit en passant, si vous avez le mot de passe root, connectez-vous simplement avec et définissez-le comme il était.
chmod 0440 / etc / sudoers
Cela vous évitera de démarrer en mode mono-utilisateur ou pire, de démarrer à partir d'un livecd.
Dans mon cas, je ne pouvais pas me permettre d'arrêter le serveur.
la source
Si Docker est installé et que votre utilisateur est membre du
docker
groupe, vous pouvez facilement vous sortir de ce cornichon (et de quelques autres) sans redémarrer ou quoi que ce soit:$ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
apt-get update && apt-get install [vim|nano|whatever]
cd ~/host.etc/
exit
la source
pkexec
est également indisponible pour une raison quelconque, cela fournit une méthode alternative, sans redémarrage, qui est presque aussi rapide et simple.