1. 程式人生 > >net-snmp在Linux下的安裝過程【轉】

net-snmp在Linux下的安裝過程【轉】

原帖地址  http://mxdxm.iteye.com/blog/509141

NET-SNMP安裝方法 - [關於技術] 

http://michaels.blogbus.com/logs/29901067.html 



這篇文章我們主要講解NET-SNMP的安裝過程。 

在描述NET-SNMP安裝過程之前,我們先來說一下什麼是SNMP。 

(以下內容譯自官方網站:http://www.net-snmp.org) 

Simple Network Management Protocol (SNMP) 是一個被廣泛使用的協議,可以監控網路裝置(比如路由器)、計算機裝置甚至是UPS。Net-SNMP是用於實施SNMP v1,SNMP v2,SNMPv3的應用程式套件,可以使用在IPv4、IPv6的環境中。這個套件包括: 



* 命令列程式包括: 
   +從支援SNMP的裝置中檢索資訊的命令。用於執行單個的請求(snmpget,snmpgetnext),或者執行多個請求(snmpwalk,snmptable,snmpdelta)。 

   +可以用於手動設定資訊的命令(snmpset)。 

   +檢索一套固定資訊的命令(snmpdf,snmpnetstat,snmpstatus)。 

   +可以把MIB oid的資訊在“數字”形式和“字元”形式之間進行轉換的命令(snmptranslate),它還能顯示MIB的內容和結構。 

*使用Tk/perl來提供一個圖形化的MIB瀏覽器(tkmib)。 

*一個接收SNMPtrap資訊的daemon。經過選擇的snmp通知資訊可以被日誌記錄(記錄在syslog,或者NT的日誌,或者文字檔案),轉發到另一個SNMP管理系統,或者傳遞到其它的程式。 


*一個可擴充套件的代理程式(snmpd),用於對管理系統提出的SNMP請求做出響應。這包括了內建的多種支援性: 

支援廣泛的MIB資訊模組,可以使用動態載入的模組進行擴充套件,可以使用外部的指令碼和命令進行擴充套件,對多路複用SNMP(SMUX)和代理可擴充套件性協議(AgentX)的支援。 

*包括一個庫,用於支援對新的SNMP開發,支援C和Perl API。 

Net-SNMP對於許多的UNIX和類UNIX作業系統都是支援的,也支援windows。注意:對於不同的系統功能會有所變化。請閱讀你所在平臺的README檔案。 



如果你的伺服器上沒有安裝NET-SNMP或者其他用於實施SNMP協議的軟體,那麼你安裝MRTG就會報錯了。 


下面,我們開始。 

1. 下載NET-SNMP 

cd ~ 

wget http://jaist.dl.sourceforge.net/sourceforge/net-snmp/net-snmp-5.4.1.tar.gz 

如果是SunOS,安裝原始碼包就比較麻煩了,安裝二進位制包相對簡單。 

但是不同版本的SunOS需要下載不同版本的二進位制包,首先要先確定你的系統是什麼版本: 

uname -a 

SunOS ws01 5.9 Generic_122300-03 sun4u sparc SUNW,Sun-Fire-V240 

5.9意思是Solaris9 
5.8意思是Solaris8,以此類推 

"sun4u" 表示Ultra平臺 
"sun4m" 表示SuperSPARC平臺  例如:Sparc 5 or Sparc 10 
"sun4d" 表示older SPARC boxes 


在這個Solaris9的系統上,我就必須下載net-snmp_5.2.2-SunOS_5.9_sun4u.tar.gz這個版本了。 

wget ftp://ftp.freesnmp.com/mirrors/net-snmp/net-snmp_5.2.2-SunOS_5.9_sun4u.tar.gz 

但是二進位制包目前我只找到了5.2.2版本,如果不滿足要求,那麼你就必須使用最新版的,需要進行編譯了。 

當然,也可以使用sunfreeware上面提供標準solaris安裝包 

wget ftp://ftp.sunfreeware.com/pub/freeware/sparc/9/netsnmp-5.4.1-sol9-sparc-local.gz 

2. 安裝NET-SNMP 

gunzip -c net-snmp-5.4.1.tar.gz | tar xf - 

cd net-snmp-5.4.1 

./configure 

make 

#編譯時如果出現: 

grep: /usr/lib/libbeecrypt.la: No such file or directory 
/bin/sed: can't read /usr/lib/libbeecrypt.la: No such file or directory 
libtool: link: `/usr/lib/libbeecrypt.la' is not a valid libtool archive 
make[1]: *** [libnetsnmpmibs.la] Error 1 
make[1]: Leaving directory `/email/share/ceno_soft/net-snmp-5.4.1/agent' 
make: *** [subdirs] Error 1 


說明缺少libbeecrypt.la ,libbeecrypt.so等共享庫 

如果確認系統中有libbeecrypt.la,也許他安裝在/usr/local下面,可嘗試: 

ln -s /usr/local/lib/libbeecrypt.la /usr/lib/libbeecrypt.la 

如果/usr/local下面沒有,那麼你必須安裝beecrypt 

cd ~ 

wget http://nchc.dl.sourceforge.net/sourceforge/beecrypt/beecrypt-4.1.2.tar.gz 

gunzip -c beecrypt-4.1.2.tar.gz | tar xvf - 

./configure -prefix=/usr 

#預設是安裝在/usr/local,我們需要安裝在/usr目錄下。如果沒有加這個引數需要做連線 

ln -s /usr/local/lib/libbeecrypt.la /usr/lib/libbeecrypt.la 

make && make install 

好,beecrypt安裝完成後,我們繼續NET-SNMP的編譯 

cd ../net-snmp-5.4.1 

make 

make install 

在SunOS的安裝方法再稍微提一下 

cd ~ 

gunzip netsnmp-5.4.1-sol9-sparc-local.gz 

pkgadd -d netsnmp-5.4.1-sol9-sparc-local 

NET-SNMP會被安裝到/usr/local目錄下。 

這樣,NET-SNMP就算安裝好了,但是如果要正常的執行它,還有些工作要做。 

3. 執行NET-SNMP 

首先檢視當前系統的snmpd命令是否是你剛剛安裝的版本 

snmpd -v 

NET-SNMP version:  5.4.1 
Web:               http://www.net-snmp.org/ 
Email:             [email protected]

出現這個結果,這就表示現在系統預設的smpd就是你剛剛安裝的那個,如果不是,那麼你需要檢查一下是否有老版本的存在。 

按照我以上的方法,snmpd應該被安裝在: 

which snmpd 

/usr/local/sbin/snmpd 

如果是SunOS,執行snmpd的時候可能會提示: 

ld.so.1: snmpd: fatal: libcrypto.so.0.9.8: open failed: No such file or directory 

這個問題的原因應該和在Linux上的那個問題一樣的。 

解決方法: 

首先確認你的LD_LIBRARY_PATH 

vi /etc/profile 
LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:/usr/local/ssl/lib 

然後做連線: 

cd /lib 

ln -s /usr/local/ssl/lib/libcrypto.so.0.9.8 

如果沒有/usr/local/ssl/這個目錄,那麼說明你沒有安裝OpenSSL,你需要先安裝OpenSSL-0.9.8i,安裝方法這裡暫且不談。 

以上工作都完成以後,那麼你的snmpd就可以運行了。 

4. 編輯配置檔案snmpd.conf 

建立配置檔案snmpd.conf,可以使用命令: 

snmpconf -g basic_setup 

回答問題即可,但是較麻煩,手工建立很簡單。 

vi /usr/local/share/snmp/snmpd.conf 

syslocation  "SHANGHAI P.R.China" 
syscontact  [email protected] 
rocommunity  whatever 
rwcommunity  whoareyou 

#這個rocommunity和rwcommunity的值你可以自己定義 

snmpd.conf檔案只寫上面四句話就足夠了。 

執行snmpd: 

/usr/local/sbin/snmpd 

測試snmpd執行是否正常: 

snmpget -v 1 -c whatever localhost sysUpTime.0 

snmpwalk -v 2c -c whatever -m ALL localhost .1.3 | more 

在Linux系統上到這一步一般不會出現什麼問題,在SunOS上可能會有問題。 

如果有問題,還可以嘗試: 

/usr/local/sbin/snmpd -f -Le 

或者: 

cd /usr/local/sbin 

gdb snmpd 

run -f -Le 

到這裡,NET-SNMP的安裝和執行就結束了。如果你安裝過程中遇到什麼疑難雜症歡迎發郵件給我。 

最後,Good Luck! 

相關推薦

net-snmp在Linux安裝過程

原帖地址  http://mxdxm.iteye.com/blog/509141 NET-SNMP安裝方法 - [關於技術] http://michaels.blogbus.com/logs/29901067.html 這篇文章我們主要講解NET-SNMP的安裝過程。 在

LinuxMySQL/MariaDB Galera集群搭建過程

分支 指定 util -1 令行 第一個 否則 alt 常見 MariaDB介紹 MariaDB是開源社區維護的一個MySQL分支,由MySQL的創始人Michael Widenius主導開發,采用GPL授權許可證。 MariaDB的目的是完全兼容MySQL,包括API

centos安裝配置hadoop超詳細過程

轉自:http://www.centoscn.com/image-text/install/2014/1121/4158.html 1、叢集部署介紹 1.1 Hadoop簡介           Hadoop是Apache軟體基金會旗下的一個開源分散式計算平臺。以Hadoop分散式檔案系統

linux平臺從源碼安裝git

三方 源碼 tails ace clas rect 應該 結果 下一步 轉自:http://blog.csdn.net/lianshaohua/article/details/50571560 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 如果是ubun

從一道面試題來認識java類加載時機與過程

包含 布局 hello 印象 大致 周期 default () itl 說明:本文的內容是看了《深入理解Java虛擬機:JVM高級特性與最佳實踐》後為加印象和理解,便記錄了重要的內容。 1 開門見山 以前曾經看到過一個java的面試題,當時覺得此題很簡單,可是自己

在 CentOS7 安裝 ELK

ELK是一個成熟的日誌系統,主要功能有收集、分析、檢索,詳細見 elastic官網。 本文主要介紹如何在CentOS7下安裝最新版本的ELK,當然現在docker已經有完全配置成功的elk容器,安裝配置非常方便,但是如果你想自己從安裝jdk開始,那這篇部落格將能夠幫助到你。 安裝前瞭解一下 作

瀏覽器一個請求的過程

瀏覽器一個請求的過程 當我們在瀏覽器位址列輸入 www.xx.com ,然後回車, 這個請求背後經歷了什麼?以下是個人理解,如有偏差,請糾正! 首先重新溫習下網路模型: 七層結構(至頂向下):應用層、表示層、會話層、傳輸層、網路層、資料鏈路層、物理層 client(

讓PIP源使用國內映象,提升下載速度和安裝成功率

對於Python開發使用者來講,PIP安裝軟體包是家常便飯。但國外的源下載速度實在太慢,浪費時間。而且經常出現下載後安裝出錯問題。所以把PIP安裝源替換成國內映象,可以大幅提升下載速度,還可以提高安裝成功率。 國內源: 新版ubuntu要求使用https源,要注意。 清華:https://pypi.tu

Linux檢視mysql 安裝路徑

一、檢視檔案安裝路徑由於軟體安裝的地方不止一個地方,所有先說檢視檔案安裝的所有路徑(地址)。這裡以mysql為例。比如說我安裝了mysql,但是不知道檔案都安裝在哪些地方、放在哪些資料夾裡,可以用下面的命令檢視所有的檔案路徑在終端輸入:whereis mysql回車,如果你安

docker學習一:Linux系統安裝docker

最近在學習springboot微服務的開發,順便學了下docker: Docker的三大核心概念:映象、容器、倉庫 映象:類似虛擬機器的映象、用俗話說就是安裝檔案。 容器:類似一個輕量級的沙箱,容器是從映象建立應用執行例項, 可以將其啟動、開始、停止、刪除、而這些容器都是相互

centos7.0安裝kvm

PRE-INSTALL ============================================================= kvm相關安裝包及其作用 qemu-kvm 主要的KVM程式包 python-virtinst 建立虛擬機器所需要的命令列工具和程式庫 virt-m

Linuxgit源碼安裝

lac itl 允許 pla rom code ins 8.0 代碼 轉自:http://blog.csdn.net/u012889638/article/details/51167123 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 版本信息:Cent

CentOS 7.0 安裝Redis 3.2.1詳細過程和使用常見問題

nec count ges des useful 內存 warning before outside http://www.linuxidc.com/Linux/2016-09/135071.htm 環境:CentOS 7.0 Redis 3.2.1 Redis的安裝與啟動

Windows環境Python 安裝庫 is not a supported wheel on this platform解決辦法

Windows環境下Python 安裝庫 is not a supported wheel on this platform解決辦法 在使用python進行pdf轉換圖片時,需要PythonMagick庫,但下載了許多whl都無法解決 解決方案 可能的原因

在Linux安裝python3

原文連結:http://www.cnblogs.com/feng18/p/5854912.html 1、linux下安裝python3 a、 準備編譯環境(環境如果不對的話,可能遇到各種問題,比如wget無法下載https連結的檔案)

windowsMinGW-w64安裝

MinGW分為較早開發的MinGW32和之後為編譯64位程式開發的MinGW-w64,MinGW32只能編譯32位的程式,而mingw64不僅能編譯64位程式,也能編譯32位程式,還能進行交叉編譯,即在32位主機上編譯64位程式,在64位主機上編譯32位程式。 一

圖解EclipseJRebel6.2.0熱部署外掛安裝、破解及配置

標籤:   這兩天在做後臺管理系統,前端框架用Bootstrap,後端用SpringMVC+Velocity。在開發過程中,經常需要對介面進行微調,調整傳參等,每次更改一次java程式碼,就得重新部署一次,耗在各種等待上的時間太多了。因此下決心將JRebel外掛裝上。   第一步,安裝:   接著,

CentOS6.5docker的安裝及遇到的問題和簡單使用

Docker是一個開源的應用容器引擎,可以輕鬆的為任何應用建立一個輕量級的、可移植的、自給自足的容器。利用Linux的LXC、AUFS、Go語言、cgroup實現了資源的獨立,可以很輕鬆的實現檔案、資源、網路等隔離,其最終的目標是實現類似PaaS平臺的應用隔離。    Doc

在windows安裝、配置、運行PostgreSQL

data sin server art The bsp 超級 環境變量設置 環境 安裝PostgreSQL 在Windows下的安裝就位無腦安裝,選擇好安裝路徑就好了,我的安裝目錄為D:\PostgreSQL\10,需要註意一下幾點: 安裝過程中需要一個數據庫的目錄,我的為

Anaconda安裝pyecharts步驟及常見錯誤

name geo 步驟 聲明 安裝 ini href ech dash 本文轉載自:https://blog.csdn.net/skj1995/article/details/81187954 (1)之前看了幾篇博客,有人說用cmd命令在目錄C:\Users\Adm