Net-SNMP安装

Net-SNMP的安装

目录

1、安装环境

使用的系统为ubuntu16.4的64位系统安装在VMware 12.5.7上
Net-SNMP使用5.7.3版本

2、源码下载

Net-SNMP的源码sourceforge下载地址 ,也可以在官网下载。我下载的是net-snmp-5.7.3.tar.gz

3、安装准备

为了避免安装时出现竞争,需要运行如下命令卸载可能安装的软件

sudo apt-get remove snmp
sudo apt-get remove snmpd
sudo apt-get remove libsnmp15
sudo apt-get remove libsnmp-base

4、安装依赖包

如果你也是安装在ubuntu桌面版本的话,需要安装依赖包。命令如下:

sudo apt-get install libperl-dev
sudo apt-get install libsensors4-dev  //不是必须的,如果你要使用lm-sensors模块则需安装

5、解压

将下载的源码放在你的工作目录下,运行解压命令:

tar xvf net-snmp-5.7.3.tar.gz
cd net-snmp-5.7.3

6、配置

cd net-snmp-5.7.3
./configure --with-mib-modules="ucd-snmp/lmsensorsMib" --with-ldflags="-lsensors"

运行之后会问你一些问题如邮箱、位置、日志等,可以直接按回车选择默认即可,你也可以在配置时指定这些使用下面的命令:

./configure --with-default-snmp-version="3" 
--with-sys-contact="@@no.where" --with-sys-location="Unknown" 
--with-logfile="/var/log/snmpd.log" --with-persistent-directory="/var/net-snmp" 
--with-mib-modules="ucd-snmp/lmsensorsMib" --with-ldflags="-lsensors"

你也可以添加

--prefix=/usr/local/net-snmp

来指定Net-SNMP安装到/usr/local/net-snmp目录下,Net-SNMP默认是安装到/usr/local目录下的。
注意:上面使用的--with-mib-modules="ucd-snmp/lmsensorsMib" --with-ldflags="-lsensors"不是必须的,我在这里添加这个配置项是为了后面使用lm-sensors模块,如果你不需要可不添加。

配置的信息如下图所示:
这里写图片描述

6、编译和安装

执行make命令进行编译

make

执行sudo make install 命令进行安装,安装时需要使用管理员权限

sudo make install

安装成功后如下图所示:
这里写图片描述
可以使用下面的命令去验证你是否成功安装了Net-SNMP,如果你可以获取到正确的版本号,说明你已经成功安装了Net-SNMP

$snmpget --version
NET-SNMP version: 5.7.3

6、配置snmpd.conf

  1. 可以将源码目录中的EXAMPLE.conf修改为snmpd.conf对其进行一定的修改,然后将其放在安装目录下/usr/local/share/snmp,也可放在自定义的目录下(在自定义目录下运行snmpd时需要使用-c选项指定snmpd.conf的具体位置)。
  2. 也可以使用sudo snmpconf -i -g basic_setup命令来配置产生一个snmpd.conf文件,其中-i选项使产生的文件存放在snmp的安装目录下,否则在当前目录下产生。
  3. 还可以自己新建一个snmpd.conf文档,在文档中加入如下配置,以获得一个最简单的配置文件。然后将文件拷贝到snmp的安装目录下。
rocommunity public
rwcommunity private
trapcommunity public

7、运行snmpd

如果你的snmpd.conf文件是放在Net-SNMP的安装目录下(/usr/local/share/snmp)则直接运行snmpd即可

sudo snmpd

如果是放在其它目录下则需指定配置文件的位置

sudo snmpd -c $PATH/snmpd.conf

可通过如下命令检查snmpd是否启动

in@v-m:~/learn$ netstat -na | grep 161
udp        0      0 0.0.0.0:161             0.0.0.0:*                          
unix  3      [ ]         流        已连接     16156    
unix  3      [ ]         流        已连接     40161    /var/run/dbus/system_bus_socket
unix  3      [ ]         流        已连接     16115    /var/run/dbus/system_bus_socket
unix  2      [ ]         流        已连接     16107    
unix  3      [ ]         流        已连接     16106  

in@v-m:~/learn$ ps aux | grep snmp
root      75868  0.0  0.1  40580  5280 ?        S    23:02   0:00 snmpd

8、测试snmpd

可以用如下的几个命令获取系统开机时间,如果有正确的返回则说明snmp运行正常

in@v-m:~$ snmpget -v 2c -c public localhost sysUpTime.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (60970) 0:10:09.70
in@v-m:~$ snmpget -v 2c -c public localhost 1.3.6.1.2.1.1.3.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (74822) 0:12:28.22

参考:

  1. Net-Snmp on Ubuntu
  2. Net-SNMP and lm-sensors on Ubuntu 10.04
  • 2
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值