Est-il possible d'utiliser sudo avec! Requireetty pour une commande spécifique

11

J'essaie d'autoriser l'exécution d'une commande spécifique sous sudo sans tty. J'ai trouvé que je pouvais désactiver require pour un groupe:

Defaults:%support !requiretty

Mais je ne sais pas comment le faire pour une seule commande. Est-ce possible du tout?

Guillaume
la source

Réponses:

12

Vous devriez pouvoir faire:

Cmnd_Alias                NOTTYCMDS = /path/to/cmd1, /path/to/cmd2
Defaults!NOTTYCMDS        !requiretty
En pause jusqu'à nouvel ordre.
la source
Semble prometteur, mais cela ne fonctionne pas pour moi.
prend
2
Cela fonctionne pour moi exécutant Sudo version 1.7.4p5.
Keith Burdis du
Je ne sais pas pourquoi Defaults:USERALIAS !requirettycela ne fonctionne pas pour moi, mais ce Cmnd_Alias ​​le fait, et c'est assez bien.
bgStack15
5

Pour désactiver l'exigence sudo tty pour une seule commande, utilisez ce qui suit dans le fichier sudoers:

Defaults!/path/command !requiretty

(Ceci s'ajoute à la ligne "Defaults requireetty" qui active l'option en général. Remarque sur la syntaxe potentiellement déroutante: le premier "!" Signifie simplement que ce qui suit est une liste de commandes (comparer avec ":" pour une liste d'utilisateurs) , etc.), tandis que le second "!" signifie "non".)

Daniel
la source