Tom*_*nor 6 snmpd ubuntu-10.04
我有一台运行 Postgresql 9.1 复制的服务器。我写了一个脚本来打印当前的复制延迟(master 每 60 秒插入一个 unix 时间戳,slave 将它与当前时间戳进行比较)。
我已经添加
extend replag /usr/local/bin/check_lag_quietly.sh
Run Code Online (Sandbox Code Playgroud)
to snmpd.conf
,并重新启动snmpd
服务,但是当我从本地主机或网络上的另一台机器snmpwalk主机时,我可以看到所有其他OID,但不是这个。
如果我做 SNMP-Get 作为
tom.oconnor@charcoal-black:~$ snmpget -v2c -cpublic dns-2 UCD-SNMP-MIB::extTable
UCD-SNMP-MIB::extTable = No Such Object available on this agent at this OID
Run Code Online (Sandbox Code Playgroud)
然后它也无法在那里找到 OID。
Net-SNMP 版本 5.4.2.1,Ubuntu 10.04。
在 Debian 5.4.3 snmpd 上,默认情况下似乎不会加载所有模块,只需添加:
-I interface,ifTable,ifXTable,cpu,cpu_linux,hw_mem,extend,versioninfo,snmp_mib,ip,at,system_mib
Run Code Online (Sandbox Code Playgroud)
到 snmpd 的命令行(注意其中的“扩展”),我可以:
snmpwalk -Ou -v 1 -c public localhost nsExtendOutput2Table
Run Code Online (Sandbox Code Playgroud)
它返回默认的“扩展”示例:
enterprises.netSnmp.netSnmpObjects.nsExtensions.nsExtendObjects.nsExtendOutput2Table.nsExtendOutput2Entry.nsExtendOutLine."test1".1 = STRING: Hello, world!
enterprises.netSnmp.netSnmpObjects.nsExtensions.nsExtendObjects.nsExtendOutput2Table.nsExtendOutput2Entry.nsExtendOutLine."test2".1 = STRING: Hello, world!
enterprises.netSnmp.netSnmpObjects.nsExtensions.nsExtendObjects.nsExtendOutput2Table.nsExtendOutput2Entry.nsExtendOutLine."test2".2 = STRING: Hi there
Run Code Online (Sandbox Code Playgroud)
这很接近你想要的。
您可以使用以下命令获取所有 snmpd 模块的列表:
snmpd -Dmib_init -H
Run Code Online (Sandbox Code Playgroud)
我想这里真正的问题是“我如何让 snmpd 默认加载所有模块”