
我一直在嘗試設定一些 SNMP 擴充功能。以下是我的目標主機上 /etc/snmp/snmpd.conf 中的範例條目:
extend php_pids /var/skotos/cacti/check-proc lsphp5
該程式運作良好:
# /var/skotos/cacti/check-proc lsphp5
There are 26 lsphp5 processes.
但是,當我訪問仙人掌伺服器時,出現錯誤:
snmpwalk -c <community> <site> 'NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."php_pids"'
NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."php_pids": Unknown Object Identifier
(我從 Cacti 得到超時,但我認為 snmpwalk 會去掉中間人。)
對於伺服器上的 Cacti 和目標上的 SNMP,其他一切都工作正常,但由於某種原因,我根本無法讓 nsExtendOutput1Line 工作。
這是一個非常新鮮的 Debian Wheezy 7.4 安裝。
答案1
由於許可問題,MIB 資料庫不久前已從 libsnmp-base 中刪除,因此目前您的用戶端無法將名稱轉換為 OID。您可以直接使用物件識別碼查詢 snmpd 伺服器,方法是:(要求輸出的第一行)
snmpwalk -c <community> <site> 1.3.6.1.4.1.8072.1.3.2.3.1.1
或者,您可以安裝非免費儲存庫中的套件 snmp-mibs-downloader。
apt-get install snmp-mibs-downloader
它應該會自動下載資料庫,但如果由於某種原因它不只運行“download-mibs”腳本。資料庫正確下載後指令:
snmpwalk -c <community> <site> 'NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."php_pids"'
應該可以工作。