2011-08-01 45 views
2

我已經用snmp支持編譯了php,當我在php上執行strace時,我得到了很多以下內容,顯示它試圖通過每個MIB文件進行解析。是否可以在啓用snmp3_get/snmp3_set方法的情況下編譯php,但是爲了不輸出所有這些?PHP在不加載MIB​​的情況下配置SNMP

$> strace php -v

... 
open("/usr/local/share/snmp/mibs/SNMPv2-TM.txt", O_RDONLY|O_LARGEFILE) = 3 
fstat64(3, {st_mode=S_IFREG|0644, st_size=5775, ...}) = 0 
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7645000 
read(3, "SNMPv2-TM DEFINITIONS ::= BEGIN\n"..., 4096) = 4096 
read(3, "'n' as an unsigned integer\n  "..., 4096) = 1679 
read(3, "", 4096)      = 0 
close(3)        = 0 
munmap(0xb7645000, 4096)    = 0 
open("/usr/local/share/snmp/mibs/NET-SNMP-VACM-MIB.txt", O_RDONLY|O_LARGEFILE) = 3 
fstat64(3, {st_mode=S_IFREG|0644, st_size=5039, ...}) = 0 
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7645000 
read(3, "NET-SNMP-VACM-MIB DEFINITIONS ::"..., 4096) = 4096 
read(3, "across\n     all nsVa"..., 4096) = 943 
read(3, "", 4096)      = 0 
close(3)        = 0 
... 

所有SNMP的要求我將作出將進行直接調用整個OID,所以它是沒有必要分析這些文件

回答

2

通常的net-snmp的應用將從硬編碼目錄列表或MIBDIRS環境變量中包含的目錄列表中讀取MIB文件。

確保沒有解析MIB文件的一種非常簡單,快速的方法是在調用函數初始化您的net-snmp之前,覆蓋MIBDIRS環境變量以指向不存在的目錄應用。

+1

我改正這種情況的方法是通過設置以下環境變量: 'MIBDIRS =/var/empty' 'MIBS =' – nicknisi

相關問題