1、检查系统是否已经安装snmp的rpm包
以下是安装snmp服务需要的rpm包:
libsensors3-2.10.6-55.el5.i386.rpm
lm_sensors-2.10.6-55.el5.i386.rpm
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
net-snmp-5.3.2.2-5.el5.i386.rpm
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
推荐到http://rpm.pbone.net/下载这些rpm包,该网站比较全面,包含各种版本的包。
使用命令:$ rpm -qa|grep snmp
检查是否安装net-snmp-utils-5.3.2.2-5.el5,net-snmp-libs-5.3.2.2-5.el5,net-snmp-5.3.2.2-5.el5三个rpm包
使用命令:$ rpm -qa|grep libsen
检查是否安装libsensors3-2.10.6-55.el5
使用命令:$ rpm -qa|grep lm
检查是否安装lm_sensors-2.10.6-55.el5

2、若系统中没有安装以上包,则先安装。
使用命令:rpm –ivh 包名
安装完后,使用命令:$ rpm -qa|grep snmp,检查是否已经安装成功。
[root@jsbjira snmp]# rpm -qa|grep net-snmp
net-snmp-libs-5.3.2.2-25.el5_11
[root@jsbjira snmp]# rpm -ivh net-snmp-5.3.2.2-25.el5_11.x86_64.rpm
[root@jsbjira snmp]# rpm -ivh net-snmp-utils-5.3.2.2-25.el5_11.x86_64.rpm
[root@jsbjira snmp]# rpm -ivh lm_sensors-2.10.6-55.el5.x86_64.rpm
[root@jsbjira snmp]# rpm -ivh libsensors3-2.10.6-55.el5.x86_64.rpm

3、启动snmp服务
若安装成功,则可使用命令:
[root@jsbjira snmp]# service snmpd start
启动 snmpd:[确定]
提示:Starting snmpd: [ OK ],则启动snmp服务成功。
使用命令:chkconfig snmpd on,将snmpd服务设为开机自启动。
[root@jsbjira snmp]# chkconfig snmpd on
然后使用命令:$ chkconfig --list | grep snmpd,查看是否已经设置成功。
[root@jsbjira snmp]# chkconfig --list | grep snmpd
snmpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

4、验证snmp服务
(1)使用snmpwalk命令,查看本机localhost的主机名:
[root@jsbjira snmp]# snmpwalk -v 2c -c public localhost sysName.0
SNMPv2-MIB::sysName.0 = STRING: jsbjira
如上,获取到本机主机名为jsbjira,则表示snmp服务已经可以正常使用。
(2)使用snmptranslate命令,检查snmp工具是否可以使用:

5、重新编译nagios的插件生成check_snmp
[root@jsbjira nagiospackage]# cd nagios-plugins-1.5
[root@jsbjira nagios-plugins-1.5]# ./configure --prefix=/usr/local/nagios --with-snmpget-command=/usr/bin/snmpwalk --with-snmpgetnext-command=/usr/bin/snmpwalk
注意:用make, 重新配置参数及make编译:注意不要用make install重新安装,不然会把原配置文件都覆盖。
[root@jsbjira nagios-plugins-1.5]# make

6、把check_snmp拷贝至nagios/libexec目录下
[root@jsbjira plugins]# pwd
/opt/nagiospackage/nagios-plugins-1.5/plugins
[root@jsbjira plugins]# cp check_snmp /usr/local/nagios/libexec
确认是否正常:
[root@jsbjira libexec]# check_snmp -help
若看到版本号就算OK了,如下图所示。
