不能在NAGIOS自定义对象变量值中使用dollar

时间:2015-03-18 17:08:09

标签: nagios

使用nagios,我声明这样的主机:

define host{
    use                 aix-server
    host_name           test_passwd
    alias               test_passwd
    address             10.4.15.75
    hostgroups          aix-servers
    parents             theparent
    _LOGIN              "testlog"
    _PASSWD             "1$dollar"
}

查看自定义变量_PASSWD:NAGIOS 3.0.6未正确设置传递给检查脚本的相应环境变量:

NAGIOS__HOSTPASSWD=1dollar

美元角色已经消失了!

我尝试了在谷歌上看到的许多逃避可能性,但它似乎不适用于自定义对象变量值:

如果我试过这个

_PASSWD             "1\\$$ \$\$ \\$\\$ \\$$ \$$ dollar"

NAGIOS env var则是:

NAGIOS__HOSTPASSWD=1\\ \\ \\\\ \\ \ dollar

再也没有美元了。

那么如何将美元字符放入自定义对象变量的值中呢?

2 个答案:

答案 0 :(得分:3)

检查nagios.cfg文件以获取以下行:

illegal_object_name_chars=`~!$%^&*"|'<>?,()=
illegal_macro_output_chars=`~$^&"|'<>

第二行很可能是你的目标。在更改这些行之前,请阅读文档,了解它们存在的原因以及为什么将它们设置为这些字符。

答案 1 :(得分:0)

输入双美元符号:

_PASSWD             "1$$dollar"