Lorsque j'essaie d'exécuter en ls
tant qu'utilisateur abc
avec la commande suivante, j'obtiens une erreur:
xyz@host:~/temp$ sudo -u abc ls
[sudo] password for xyz:
Sorry, user xyz is not allowed to execute '/bin/ls' as abc on host.
Mais si je le fais su abc
et que ls
je l' exécute, je n'ai aucun problème
C'est parce que
sudo
c'est différent desu
. Lorsque voussu abc
, vous devenez l'utilisateurabc
en ce qui concerne le système. Vous pouvez alors toutabc
faire.D'autre part,
sudo
est utilisé pour permettre à d'autres utilisateurs d'exécuter certaines commandes par proxy. En d'autres termes, votresudo
configuration vous permet d'effectuer certaines commandes au nom deabc
. Si la commande que vous essayez d'exécuter n'en fait pas partie, vous obtenez l'erreur que vous avez signalée.la source
Au cas où tout irait bien, mais vous recevez toujours un
Sorry user xxx cannot execute...
message et il vous demande toujours unsudo
mot de passe.Tu peux le faire:
/etc/sudoers
ligne de suppression avec vos paramètres utilisateurCela a fonctionné pour moi. Il s'est avéré que la fin de cette ligne était mauvaise car j'ai copié des commandes qui devaient être exécutées à partir d'un e-mail.
la source
visudo
de le modifier en premier lieu, on vous aurait dit cela?