我正在尝试允许在没有 tty 的情况下在 sudo 下运行特定命令。我发现我可以为某个组禁用 requiretty:
Defaults:%support !requiretty
但我不知道如何用单个命令来做到这一点。这可能吗?
答案1
你应该能够做到:
Cmnd_Alias NOTTYCMDS = /path/to/cmd1, /path/to/cmd2
Defaults!NOTTYCMDS !requiretty
答案2
要禁用单个命令的 sudo tty 要求,请在 sudoers 文件中使用以下命令:
Defaults!/path/command !requiretty
(这是对通常启用该选项的“Defaults requiretty”行的补充。请注意可能令人困惑的语法:第一个“!”仅表示后面跟着的是命令列表(与“:”比较,表示用户列表等),而第二个“!”表示“不是”。)