У меня есть два файла MIBS, MIB1 и MIB2, MIB2 импортирует элементы из MIB1. Я запускал smilint и build-pysnmp-mib, на самом деле smidump, так как я не смог предварительно загрузить элементы экспорта файла с помощью build-pysnmp-mib.
С помощью smidump у меня есть два модуля MIB .py, MIB1.py и MIB2.py, однако, когда я пишу свой SNMP-агент, pysnmp не может найти модуль экспорта MIB1.py. я получил эту ошибку
Traceback (most recent call last):
File "snmpagent.py", line 165, in <module>
agent = SNMPAgent(objects)
File "snmpagent.py", line 90, in __init__
mibObject.objectType)
File "/usr/lib/python2.7/dist-packages/pysnmp/smi/builder.py", line 299, in importSymbols
self.loadModules(modName, **userCtx)
File "/usr/lib/python2.7/dist-packages/pysnmp/smi/builder.py", line 259, in loadModules
'MIB module \"%s\" load error: %s' % (modPath, traceback.format_exception(*sys.exc_info()))
pysnmp.smi.error.SmiError: MIB module "./MIB2.py" load error: ['Traceback (most recent call last):\n', ' File "/usr/lib/python2.7/dist-packages/pysnmp/smi/builder.py", line 255, in loadModules\n exec(modData, g)\n', ' File "<string>", line 17, in <module>\n', ' File "/usr/lib/python2.7/dist-packages/pysnmp/smi/builder.py", line 302, in importSymbols\n \'No module %s loaded at %s\' % (modName, self)\n', 'SmiError: No module MIB1 loaded at <pysnmp.smi.builder.MibBuilder instance at 0x7f99213c0b48>\n']
Я попытался обновить SMIPATH, а также вручную загрузить модуль .py с помощью
mibPath = mibBuilder.getMibSources() + (builder.DirMibSource('path'),)
mibBuilder.setMibSources(*mibPath)
mibBuilder.loadModules(
'MIB1',
)
Я запускаю pysnmp на Ubuntu 14.04 и Python 2.7.6.
Может ли кто-нибудь помочь мне в этом?