我的系统上有两个用户:itsadok
,我的主要用户,和elasticsearch
,一个用于运行ElasticSearch的ulimit不同的用户。
我希望能够以二级用户身份运行内容,而不必每次都提示输入密码。
我将以下行添加到/etc/sudoers
:
itsadok ALL=(elasticsearch:elasticsearch) NOPASSWD: ALL
以我的理解,这应该允许用户itsadok在任何主机上以(用户或组)elasticsearch的身份运行任何命令而无需输入密码。但是,尝试类似
itsadok@dev001$ sudo -u elasticsearch ls
提示我输入密码。重新启动计算机没有帮助。
我究竟做错了什么?
更新:
事实证明,行的顺序sudoers
很重要。我在“用户权限规范”下放置了该行,听起来像是在正确的位置,但是%admin
后来出现的组的行覆盖了该设置。
将相同的行放在sudoers文件的末尾可解决此问题。
root ALL=(ALL:ALL) ALL
在冒号周围已经没有空格了,因此看起来不正确。为了安全起见,我尝试过(elasticsearch)
。不起作用