我安装了 Nagios 和 Gammu。
当我以 root 身份使用 gammu 时,如下所示:
/usr/bin/gammu identify (or else)
它可以工作,但是当我以 nagios 用户身份执行此操作时,我得到了以下答案:
Can't open specified file. Read only?
我甚至把 nagios 放在 root 组中,然后使用 visudo :
nagios ALL=(ALL) ALL
但是没有...我用谷歌找不到任何解决方案。所以如果有人能有个主意就太好了!
我的日志中没有任何错误...
这是用这个解决的关联。
因此我补充道:
ALL=(root) NOPASSWD: /usr/sbin/smartctl
在插件中:
my $smart_command = '/usr/bin/sudo /usr/sbin/smartctl'
答案1
您需要将您的 nagios 用户放入dialout
可以访问连接到 GSM 调制解调器的串行端口的组或任何组中。
用这样的方法找出答案:
ls -l /dev/ttyS2
crw-rw---- 1 root dialout 4, 66 May 17 12:19 /dev/ttyS2
(但ttyS2
要用正确的设备替换)。
对于像守护进程调用的程序来说, 使用sudo
这种方法是错误的。gammu