<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 成功移植NET-SNMP到ARM平臺(tái)

          成功移植NET-SNMP到ARM平臺(tái)

          作者: 時(shí)間:2016-11-11 來(lái)源:網(wǎng)絡(luò) 收藏
          經(jīng)過(guò)一個(gè)月的不懈努力終于將NET-SNMP成功移植到了ARM平臺(tái),網(wǎng)上關(guān)于NET-SNMP的資料很少,僅有的一些文章也都是輕描淡寫(xiě),很容易被誤導(dǎo),我就是其中的受害者之一,交叉編譯過(guò)程很復(fù)雜,要配置參數(shù),路徑,還有庫(kù)。所以稍有插翅就會(huì)前功盡棄。而且每編譯一次NET-SNMP都會(huì)耗費(fèi)很多的時(shí)間。很容易挫敗人的自信心。我整整啃了一個(gè)月的英文文檔,邊看邊試。下面把詳細(xì)過(guò)程貼出來(lái),跟大家共享,希望那些也想移植NET-SNMP能夠少走彎路。

          主機(jī)環(huán)境

          本文引用地址:http://www.ex-cimer.com/article/201611/316671.htm

          Windows + vmware(redhat9.0)

          IP分配如下:

          ARM開(kāi)發(fā)板:192.168.4.151

          Windows: 192.168.4.44

          Redhat9.0: 192.168.4.150

          搭建交叉編譯環(huán)境

          把交叉編譯器解壓到/opt/目錄下,然后在/etc/profile文件中添加

          環(huán)境變量,pathmunge /opt/hardhat/devkit/arm/xscale_be/bin.

          交叉編譯步驟

          ①. tar –zxvf net-snmp-5.3.2.tar.gz

          ②. cd net-snmp-5.3.2

          ③../configure --host=armv5teb-hardhat-linux //運(yùn)行平臺(tái)

          --build=i686-linux //編譯平臺(tái)

          --with-cc=xscale_be-gcc //交叉編譯器

          --with-ar=xscale_be-ar //

          --prefix=/usr/local/net-snmp //安裝目錄

          --disable-shared //靜態(tài)編譯

          --with-endianness=little //指定小端

          --enable-mini-agent//最小的SNMPD

          --with-openssl=/opt/hardhat //openssl庫(kù)路徑

          /devkit/arm/xscale_be/target/usr

          ④. make (make LDFLAGS="-static",如果沒(méi)有指定disable-shared)

          ⑤. make install

          ⑥. cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf

          ⑦. 配置/usr/local/net-snmp/share/snmp/snmpd.conf文件

          ⑧.xscale_be-strip /usr/local/net-snmp/sbin/snmpd,壓縮snmpd.

          移植文件

          在移植以前首先要?jiǎng)h除AP上的/usr/sbin/snmpd和/etc/snmpd.conf.

          1./usr/local/net-snmp/sbin/目錄下snmpd進(jìn)程

          2./usr/local/net-snmp/share/snmp/目錄下snmpd.conf ,mibs

          3./usr/local/net-snmp/bin目錄下net-snmp-config, snmpwalk, snmpget等

          備注:snmpd,net-snmp-config,snmkwalk,snmpget等工具在移植以前,要先用xscale_be-strip壓縮一下。然后snmpd放到AP的/usr/sbin中,

          Snmpd.conf放到Ap 的/etc中。其他按照上面目錄存放。AP上沒(méi)有就自動(dòng)創(chuàng)建。

          在AP上運(yùn)行snmpd

          #snmpd –c /etc/snmpd.conf

          備注:

          1.在AP上運(yùn)行時(shí)會(huì)出現(xiàn)缺少libcrypto.so.0.9.6文件。在交叉編譯器中(/opt/hardhat/devkit/arm/xscale_be/target/usr/lib)能找到這個(gè)文件,然后put到AP的/lib/目錄下。或者

          創(chuàng)建軟連接ln –s /mnt/ramd/libcrypto.so.0.9.6 /lib/libcrypto.so.0.9.6。

          2.原來(lái)snmpd.conf在/usr/local/net-snmp/share/snmp/snmpd.conf中,傳到AP時(shí)放到/etc/目錄中,所以在運(yùn)行時(shí)用參數(shù)C來(lái)指定最新目錄。

          3.當(dāng)snmpd進(jìn)程運(yùn)行時(shí)會(huì)在/var/net-snmp目錄下創(chuàng)建一個(gè)snmpd.conf.

          原來(lái)沒(méi)有,Snmpd.conf文件中有engineboot和engineID。當(dāng)用net-snmp-config創(chuàng)建v3用戶(hù)時(shí),下面會(huì)自動(dòng)添加

          createuser zhuangqian MD5 “19840318” DES,當(dāng)然同時(shí)也會(huì)在/usr/local/net-snmp/share/snmp/snmpd/conf中添加rwuser zhuangqian.

          如何創(chuàng)建V3用戶(hù)

          方法一

          ①首先關(guān)閉snmpd進(jìn)程

          ②net-snmp-config --create-snmpv3-user –a “19840318” zhuangqian

          執(zhí)行上面操作之后,/var/net-snmp/snmpd.conf文件中增加一行

          createuser zhuangqian MD5 “19840318” DES

          /usr/local/net-snmp/share/snmp/snmpd.conf中增加一行

          rwuser zhuangqian

          ③snmpd 啟動(dòng)進(jìn)程

          ④snmpget –v 3 –u zhuangqian –l authNoPriv –a MD5 –A “19840318” localhost sysUpTime.0或者

          snmpget -v 3 -u zhuangqian –l authPriv –a MD5

          -A “19840318” –x DES – X “19840318” localhost sysUpTime.0

          方法二

          # net-snmp-config --create-snmpv3-user ↙

          # 輸入用戶(hù)名(zhuangqian)↙

          # 輸入authentication pass-phrase(驗(yàn)證)如19840318長(zhǎng)度不小于8

          # 輸入encryption pass-phrase(加密)如19840318,直接回車(chē)則跟上面一樣。

          測(cè)試:

          Snmpget –v 3 –l authPriv –u zhuangqian –A “19840318” –X “19840318” localhost sysUpTime.0

          注意v3中authprotocal MD5 SHA Privprotocal DES AES

          客戶(hù)端能ping通運(yùn)行snmpd進(jìn)程的設(shè)備,但取不到值,可能是客戶(hù)端防火墻問(wèn)題,取消客戶(hù)端防火墻試試。

          測(cè)試V2

          snmpwalk –v 2c -c public 192.168.4.151 if

          snmpget –v 2c –c public 192.168.4.151 system.sysName.0



          關(guān)鍵詞: 成功移植NET-SNMPARM平

          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();