编译自:http://www.tecmint.com/run-sudo-command-without-password-linux/ 作者: Aaron Kili 译者: geekpi
假设你在只有自己使用的计算机上运行 Linux 系统,比如在笔记本电脑上,在每次调用sudo时需要输入密码,长期下来就会觉得很乏味。因此,在本指南中,我们将描述如何配置 sudo 命令[1]在运行时而不输入密码。
此设置在/etc/sudoers文件中完成,这是使用sudo 命令[2]的默认安全策略;在用户权限指定部分。
重要:在sudeors文件中,默认打开的authenticate参数用于验证目的。如果设置了它,用户必须通过密码(或其他身份验证方法)进行身份验证,然后才能使用sudo运行命令。
但是,可以使用NOPASSWD(当用户调用sudo命令时不需要密码)标记来覆盖此默认值。
配置用户权限的语法如下:
user_list host_list=effective_user_list tag_list command_list
其中:
user_list- 用户列表或已经设置的用户别名。
host_list- 主机列表或用户可以在其上运行 sudo 的主机别名。
effective_user_list- 以该用户或别名运行的用户列表
tag_list- 标签列表,如NOPASSWD。
command_list- 用户使用sudo运行的命令或命令别名列表。
要允许用户(下面的示例中的aaronkilik)使用sudo不输入密码即可运行所有命令,请打开sudoers文件:
$ sudo visudo
添加下面的行:
aaronkilik ALL=(ALL) NOPASSWD: ALL
对于组而言,在组名前面使用%字符;这意味着sys组的所有成员都可以不用密码使用sudo。
%sys ALL=(ALL) NOPASSWD: ALL
要允许用户不用密码使用sudo运行指定命令(/bin/kill),添加下面的行:
aaronkilik ALL=(ALL) NOPASSWD: /bin/kill
下面的行会让sys组成员在使用sudo运行命令:/bin/kill、/bin/rm时不用输入密码:
%sys ALL=(ALL) NOPASSWD: /bin/kill, /bin/rm
不用密码运行 sudo
对于更多的sudo配置和其他使用选项,请阅读我们有更多例子描述的文章,:
|