Ist es möglich, sudo mit! Requiretty für einen bestimmten Befehl zu verwenden?

11

Ich versuche zuzulassen, dass ein bestimmter Befehl unter sudo ohne tty ausgeführt wird. Ich habe festgestellt, dass ich die Anforderungen für eine Gruppe deaktivieren kann:

Defaults:%support !requiretty

Aber ich weiß nicht, wie ich es für einen einzelnen Befehl machen soll. Ist das überhaupt möglich?

Guillaume
quelle

Antworten:

12

Sie sollten in der Lage sein:

Cmnd_Alias                NOTTYCMDS = /path/to/cmd1, /path/to/cmd2
Defaults!NOTTYCMDS        !requiretty
Bis auf weiteres angehalten.
quelle
Sieht vielversprechend aus, aber das funktioniert bei mir nicht.
Takeshin
2
Dies funktioniert bei mir mit Sudo Version 1.7.4p5.
Keith Burdis
Ich weiß nicht, warum das Defaults:USERALIAS !requirettybei mir nicht funktioniert, aber dieser Cmnd_Alias ​​funktioniert, und das ist gut genug.
bgStack15
5

Verwenden Sie Folgendes in der sudoers-Datei, um die Sudo tty-Anforderung für einen einzelnen Befehl zu deaktivieren:

Defaults!/path/command !requiretty

(Dies ist zusätzlich zu der Zeile "Defaults requireetty", die die Option im Allgemeinen aktiviert. Hinweis zur möglicherweise verwirrenden Syntax: Das erste "!" Bedeutet lediglich, dass das Folgende eine Befehlsliste ist (vergleiche mit ":" für eine Benutzerliste usw.), während das zweite "!" "nicht" bedeutet.)

Daniel
quelle