没有密码的 Sudo 特定命令

没有密码的 Sudo 特定命令

我输入了以下条目,/etc/sudoers允许我在输入密码后运行任何命令

%sudo   ALL=(ALL:ALL) ALL

我还想在脚本中运行一个没有密码的特定命令。我尝试将以下行放入 中/etc/sudoers,但运行时它总是要求输入密码。

gmc ALL = NOPASSWD: /sbin/hdparm -C /dev/sdc

有没有办法sudo在使用通用条目之前先使用特定命令?

答案1

命令规则很重要。

man sudoers

 When multiple entries match for a user, they are applied in order.  Where
 there are multiple matches, the last match is used (which is not neces-
 sarily the most specific match).

所以如果你有

gmc ALL = NOPASSWD: /sbin/hdparm -C /dev/sdc
%sudo   ALL=(ALL:ALL) ALL

最后一条规则将适用,并且需要密码。

但是如果你有

%sudo   ALL=(ALL:ALL) ALL
gmc ALL = NOPASSWD: /sbin/hdparm -C /dev/sdc

然后应用 NOPASSWD: 规则。

相关内容