0

当我service httpd status像 root 用户一样运行时,我得到httpd (pid 2932) is running...了预期的结果。

现在,当我su nrpe运行相同的 cmd时,service httpd status我得到httpd dead but subsys locked.

我对 Linux 世界有点陌生,但对我来说,这闻起来像是nrpe没有运行这个 cmd 的权限,所以它给出了提到的输出。

如何向 nrpe 授予 sudo 权限,以便它可以以 root 身份运行 chis cmd?

我有一个 nagios 插件,可以检查 httpd 状态,它给出httpd dead but subsys locked的不是我需要的。

谢谢

4

1 回答 1

1

您应该能够通过以 root 用户身份输入 visudo 来编辑您的 sudo 文件。

要允许您的 nrpe 用户在不需要密码的情况下运行服务,您首先需要注释掉以下行(如果存在):

#Defaults targetpw
#ALL ALL=(ALL) ALL

然后添加以下行:

nrpe ALL=NOPASSWD: /usr/sbin/service

现在 nrpe 用户应该能够运行“sudo service httpd status”而不需要输入密码。

您应该注意,这将使 nrpe 用户控制每个服务。如果您使用的是 Apache,您可能想尝试这样的事情:

nrpe ALL=NOPASSWD: /usr/sbin/apache2ctl 
于 2015-07-03T10:22:39.403 回答