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: net-snmp-coders@lists.sourceforge.net
出现这个结果,这就表示现在系统默认的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 webmaster@domainname.com
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下的安装过程【转】相关推荐
- phpmyadmin/scripts/setup.php,Linux下phpMyAdmin安装过程中的问题解决
1.下载phpMyAdmin,自己想办法拷到/var/www/html下,并解压,开始使用. http://IP/phpMyAdmin测试 cp config.sample.inc.php confi ...
- linux环境下MongoDB安装过程详解
Linux下MongoDB安装和配置详解 *注:本文是参考了多篇文章后,并通过实践总结来的,按照步骤来,下载好对应的版本,保准你能安装个心仪的mongodb服务器.... 一.创建MongoDB的安装 ...
- linux 保存编译log,(转)Linux下编译安装log4cxx
一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库.功能很不错.下面记录下它的编译和安装过程. 第一步安装apr-1.3.8,顺序不能错,它必须首 ...
- liunx tar安装mysql_在Linux下,安装Mysql(tar)
在Linux下,安装Mysql(tar) # cd /home/tmp (进入压缩包所在目录) # groupadd mysql (建立mysql组) # useradd -g mysql mysql ...
- Linux入门基础教程之Linux下软件安装
Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...
- Linux 下如何安装软件?
http://zhidao.baidu.com/link?url=OkQCOZtVMXhasC8x9zFTZOumsFKf0WW25Ckr2wBF1xO08EsjrBpnMaTBlIAUYdxZ408 ...
- linux下python安装opencv库_Linux下怎么配置python和opencv
匿名用户 1级 2017-06-20 回答 以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支 ...
- Linux 下 GitLab 安装教程
Linux 下 GitLab 安装教程 安装 Linux 下载 GitLab 安装 GitLab 登录 GitLab GitLab 汉化 GitLab 设置密钥 卸载 GitLab 为了便于以后使用, ...
- Linux 下 Redis 安装教程
Linux 下 Redis 安装教程 事先准备 下载 Redis 安装 Redis 设置 Redis 开机自启动 远程访问 Redis RDM 远程访问 Redis 笔者的运行环境: CentOS S ...
最新文章
- xhtmlrenderer 将html转换成pdf,完美css,带图片,手动分页,解决内容断开的问题
- linux c指定相对路径,linux c编程,选用popen()得到一个相对路径的绝对路径
- HDU5726 GCD(rmq+二分)
- 【Docker】网络模式
- 2. Mysql数据库的入门知识
- 京东2020算法工程师0824笔试题整理
- 开源 免费 java CMS - FreeCMS1.5-数据对象-job
- android上实现0.5px线条
- GTID复制异常的解决步骤
- MySQL延时更改数据_mysql数据库备份设置延时备份方法(mysql主从配置)
- JXL读取,写入Excel
- Obj-C的hello,world 1
- linux网页防篡改软件,蓝盾网页防篡改系统
- MySQL数据库实验环境
- BJFUOJ 1429
- C语言求卢卡斯序列,卢卡斯数列 斐波那契数列和卢卡斯数列!
- 直观认识Windows
- python分析谷歌浏览器的历史记录
- python最强脚本工具_python脚本工具最百里自瞄
- 前端框架比比看:bootstrap, bulma, foundation, material-design-lite, materialize-css, semantic-ui