2011-08-01 4 views
2

PHPでstraceを実行すると、すべてのMIBファイルを解析しようとしていることがわかります。 snmp3_get/snmp3_setメソッドを有効にしてPHPをコンパイルすることは可能ですか?しかし、これをすべて出力しないようにしますか?PHP MIBをロードせずにSNMPを設定する

... 
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 
... 

$> strace php -v SNMPのすべてが直接、完全なOIDを呼び出すことで、私が行われます作ることになります呼び出し、これらのファイルを解析する必要はありません

答えて

2

通常、NET-SNMPアプリケーションハードコードされたディレクトリのリストか、MIBDIRS環境変数に含まれるディレクトリのリストからMIBファイルを読み込みます。

MIBファイルが解析されないようにする非常にシンプルで迅速な方法は、存在しないディレクトリを指すようにMIBDIRS環境変数を上書きしてから、net-snmpを初期化する関数を呼び出すことです応用。

+1

私がこれを修正したのは、次の環境変数の設定でした: 'MIBDIRS =/var/empty' ' MIBS = ' – nicknisi

関連する問題