例如,我希望允许sudo shutdown -c
始终无需输入密码即可运行,但sudo shutdown
不需要-c
始终输入密码(即使我sudo
之前已经通过了身份验证)。
答案1
要更改 sudo 配置,你需要使用 visudo 编辑 /etc/sudoers 文件(仅使用此文件,因为它包含验证。如果你不知道如何使用 vi这里是编辑文件所需的快速基础知识。要允许某些参数,有一个答案这里。因此,你基本上可以添加类似
user ALL=(root) NOPASSWD: /usr/bin/shutdown -c
到文件中以允许所有用户shutdown -c
无需输入密码即可执行。要使 sudo 始终要求输入密码,您可以通过添加以下代码将超时设置为 0:
Defaults timestamp_timeout = 0
这不是特定于命令的(抱歉,找不到更好的命令)但会要求输入所有需要密码才能执行的命令(即没有NOPASSWD
指定选项)。
有关 sudoers 文件功能的详细信息,请参阅官方网站。