Au moment d’exécuter une commande en utilisant sudo, vous obtenez le message suivant :
<utilisateur> n'apparaît pas dans le fichier sudoers. Cet incident sera signalé.
Cela peut toucher n’importe quelle distribution Linux comme Ubuntu, Mint, Debian, Fedora et autres.
Ce tutoriel vous donne les explications et solutions afin de résoudre ce message sudoers.
Table des matières
“n’apparaît pas dans le fichier sudoers” : les causes
Ce message apparaît lorsque vous tentez de passer une commande sudo avec un utilisateur qui n’a pas les permissions.
Pour rappel, sudo (substitute user do) est un programme conçu pour permettre à un utilisateur d’exécuter une commande sous un autre.
Dans la plupart des distributions Linux, il est installé par défaut pour permettre à un utilisateur d’exécuter des commandes root.
Pour cela, il faut que l’utilisateur soit déclaré dans le fichier sudoers ou fassent partie d’un groupe utilisateur ayant ces autorisations.
Lorsque ce n’est pas le cas, sudo interdit l’exécution et affiche :
<utilisateur> n'apparaît pas dans le fichier sudoers. Cet incident sera signalé.
L’évènement est consigné dans les journaux systèmes pour être vu par un administrateur.
Ici l’utilisateur démo n’a pas les autorisations d’utiliser sudo en tant que root “command not allowed”.
Dec 15 14:11:21 2022 : demo : command not allowed ; HOST=Ubuntu-VM ; TTY=pts/0 ; PWD=/home/demo ; USER=root ; COMMAND=/usr/bin/ls /
“n’apparaît pas dans le fichier sudoers” : les solutions
Ajouter l’utilisateur dans le groupe sudo (solution 1)
Pour résoudre cela, il faut ajouter l’utilisateur dans le groupe sudo.
Cela nécessite d’avoir un utilisateur administrateur. Si ce n’est pas le cas, vous serez bloqué.
- Ouvrez un Terminal
- Connectez-vous en root à l’aide de la commande su :
su -
- Puis utilisez la commande suivante en remplaçant par le nom d’utilisateur avec lequel vous obtenez l’erreur sudoers
adduser <utilisateur> sudo
- Par exemple, s’il s’agit de l’utilisateur kevin :
adduser kevin sudo
Notez que vous pouvez aussi utiliser la commande sudo, si vous avez un autre utilisateur disponible avec lequel sudo fonctionne :
sudo adduser <utilisateur> sudo
- Fermez et relancez le terminal où l’erreur “n’apparaît pas dans le fichier sudoers” s’affiche, relancez votre commande root, elle devrait fonctionner
Créez une règle sudoers (solution 2)
Une autre solution consiste à créer un privilège sudo explicite pour votre utilisateur concerné par “n’apparaît pas dans le fichier sudoers”.
Pour cela :
- Editez la configuration sudo avec visudo :
su -
visudo
- Puis ajoutez la ligne suivante en remplaçant par le nom d’utilisateur concerné
<utilisateur> ALL=(ALL:ALL) ALL
- Par exemple pour l’utilisateur kevin :
kevin ALL=(ALL:ALL) ALL
- Enregistrez les modifications
Liens
- Sudo : comment utiliser le configurer sudoers sur Linux (Debian, Ubuntu, Mint …)
- Erreur “n’apparaît pas dans le fichier sudoers”
- sudo : quels sont les problèmes de sécurité
- 15 exemples utiles de Sudoers pour configurer sudo sur Linux
- Utilisateur et groupes Ubuntu : comment ajouter, supprimer
- Ubuntu : comment passer un utilisateur en administrateur
- Comment utiliser la commande su avec des exemples sur Linux
- Gérer les utilisateurs/groupes sur linux en ligne de commandes (adduser, addgroup, usermod, passwd, …)