0

我有这个 shell 脚本ordem2.sh。在命令行中执行时它工作正常:

var="$( mysql -Ns -uzabbix -e 'select ordem from mon.vendas')"
echo $var

UserParameter加入/etc/zabbix_agentd.conf

UserParameter=ordem2,/home/ordem2.sh

但是当我尝试使用 zabbix 2.0 获取信息时zabbix_get -s 127.0.0.1 -p 10050 -k "ordem2",它没有显示返回值。这个脚本有什么问题?

4

1 回答 1

3

问题已解决。

第1步

visudo使用和为用户zabbix添加编辑 sudoers/usr/bin/mysql

例子:zabbix ALL=(ALL) NOPASSWD: /usr/bin/mysql,/usr/bin/nmap -O *

第2步

在 shell 脚本中 mysql 之前添加 sudo:

var="$( sudo /usr/bin/mysql -Ns -uzabbix -e 'select ordem from mon.vendas')"

现在用户zabbix代理可以执行了mysql

亚历山大·阿尔维斯

于 2012-09-18T20:15:38.367 回答