天天看點

net-snmp移植

1.移植前裝備工作

1.1首先先準備好交叉編譯環境

根據不同的闆子選擇不同的交叉編譯環境,這裡預設你已經有了交叉編譯器。

1.2 下載下傳net-snmp的源碼

下面有一些版本的源碼

net-snmp-5.4.1.tar.gz源碼:

http://download.csdn.net/detail/liang_baikai/9657550

net-snmp-5.7.1.tar.gz源碼:

http://download.csdn.net/detail/liang_baikai/9666368

net-snmp-5.7.3.tar.gz源碼:

http://download.csdn.net/detail/liang_baikai/9682366

筆者這裡用的是net-snmp-5.7.3版本的。

2.編譯配置與移植

2.1 解壓壓縮包

然後

2.2 ./configure

下面簡單說一下各個配置選項都是什麼意思

—-選項—————————–說明—

–host= —————————- 運作平台

–target=—————————目标平台

–build=—————————-編譯平台

–with-cc=————————- 交叉編譯器

–with-ar=————————- 使用的程式打包

–prefix=————————— 安裝目錄

–disable-shared——————-靜态編譯

–disable-scripts ——————不要安裝mib2c等腳本

–with-endianness=little ———指定小端模式

-enable-mini-agent ————-最小的snmpd

–enable-debugging ————-打開調試資訊

–with-openssl=——————-庫路徑

–disable-ipv6 ———————不使用IPv6

–disable-manuals —————–不安裝manpage說明頁

–disable-ucd-snmp-compatibility 不需要相容ucd-snmp

–enable-as-needed ————–如果隻使用其他方法行不通,連結libperl針對應用而非Net-SNMP庫。

–disable-snmptrapd-subagent 不用支援snmptrapd的子代理

–disable-embedded-perl ——–不使用嵌入式的perl

–disable-embedded-perl ———在SNMP代理和snmptrapd禁用嵌入式Perl。預設啟用

–disable-applications ————-是否關閉snmpget等功能,根據自己的需要選擇

2.3 編譯 配置 移植

配置好了,開始編譯

然後下agent目錄下應該會生成一個snmpd的檔案

這個就是我們需要的可執行程式

将這個檔案直接拷貝到闆子上面(建議先壓縮一下)

壓縮前

[root@localhost agent]# ll snmpd
-rwxr-xr-x  root root  - : snmpd
           

壓縮後

[root@localhost agent]# /opt/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-strip snmpd
[root@localhost agent]# ll snmpd
-rwxr-xr-x  root root  - : snmpd
           

明顯變小了好多

然後将這個檔案拷貝到闆子上運作就可以了,還要寫一個snmpd.conf檔案。筆者這裡直接将net-snmp-5.7.3/python/netsnmp/tests/snmpd.conf這個檔案拷貝出來的。

然後将snmpd和snmpd.conf這兩個檔案拷貝到闆子上

在闆子上執行

因為筆者最後要用zabbix監控這塊闆子,是以現在看看zabbix能否通過SNMP的協定連接配接上闆子。

net-snmp移植

zabbix面闆上顯示SNMP的圖示亮了,說明移植成功了。