关于snmp的开发,netsnmp目前的最新版本是5.7.3。 为了支持python的开发,网上的文章看了不少,走了不少弯路,所以总结一下,和大家共享。

第一部分: 安装snmp程序以及服务。

在Ubuntu中安装snmp的支持,有两种方法,第一种是直接通过apt-get进行安装。第二种是从netsnmp官网下载源码net-snmp-5.7.3.tar.gz,进行编译安装。

本人对于第二种方法,查阅了网络上的方法不胜列举,很遗憾,最后还是没有成功过,所以在这里推荐第一种。

第一步,安装snmpd,snmp,和snmp-mibs-downloader

#snmpd是一个监听snmp服务的进程,绑定在某个端口上,等待来自请求者的SNMP的请求,进行处理,返回信息给请求者。

#snmp就是一个请求者的snmp命令集。

#snmp-mibs-downloader

如下,就是安装的命令:

~$sudo apt-get install snmp

~$sudo apt-get install snmpd

~$sudo apt-get install snmp-mibs-download

第二步,就是启动snmpd服务

~$sudo service snmpd restart

最后,测试以下是否成功

~$snmpwalk -v 2c -c public localhost

如果数据返回正确,那么就表示安装的snmp已经可以正常使用了。

第二部分:安装netsnmp对应的python编程包。

这里主要是安装netsnmp-py,https://pypi.org/project/netsnmp-py/.

首先,安装对应的依赖库。

~$sudo apt-get install libsnmp30 libsnmp-dev libczmq-dev

# libsnmp-dev libczmq-dev名字不能错,否则就找不到了。

其次,安装pyzmq,pyczmq. http://pyzmq.readthedocs.io/en/latest/index.html

~$sudo pip install pyczmq

接下来,安装netsnmp-py就大功告成。

~$sudo pip install netsnmp-py

最后,就是测试一下,netsnmp-py的函数是否在python在程序中可用。

#netsnmp-py中,提供了一个SNMPSession的类,此类给出了三个基本函数get/getnext/walk。

具体可以参看: usr/local/lib/python3.6/dist-packages/netsnmp/__init__.py中的sample。

例子:

~$python

Python 3.6.5 (default, Apr 1 2018, 05:46:30) [GCC 7.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import netsnmp >>> with netsnmp.SNMPSession('localhost', 'public') as ss:... ss.get(['.1.3.6.1.2.1.1.1.0', '.1.3.6.1.2.1.1.3.0']) ... [('.1.3.6.1.2.1.1.1.0', 'STRING', '"Linux laosierLinux 4.15.0-22-generic #24-Ubuntu SMP Wed May 16 12:15:17 UTC 2018 x86_64"'), ('.1.3.6.1.2.1.1.3.0', 'Timeticks', '0:3:13:31.57')] >>>

如果上述的信息返回了,哈哈,祝福你成功了。

python netsnmp_在Ubuntu18.04中关于Python使用netsnmp进行snmp编程相关推荐

  1. ubuntu运行python ide_在Ubuntu-16.04中安装Python可视化IDE——Spyder

    Spyder是Python(x,y)的作者为它开发的一个简单的集成开发环境.和其他的Python开发环境相比,它最大的优点就是模仿MATLAB的"工作空间"的功能,可以很方便地观察 ...

  2. 【python初级】 Ubuntu18.04上安装python3、pip3

    [python初级] Ubuntu18.04上安装python3.pip3 1.背景 2.安装python3 3.安装pip3 1.背景 最近在使用docker部署. 通过docker镜像创建的容器中 ...

  3. 【python初级】 Ubuntu18.04上升级pip

    [python初级] Ubuntu18.04上升级pip 1.背景 2.pip3升级 3.示例 1.背景 我们使用pip安装模块的时候经常提示安装失败,经常由于pip版本太老造成. 为什么要升级pip ...

  4. 在Ubuntu18.04中安装ROS IDE RoboWare Studio 和Visual Studio Code

    安装ROS IDE 前言 一.安装RoboWare Studio 二.安装Visual Studio Code 参考文献 前言 一款好的开发工具可以是开发效率提升,ROS官方推荐了常用的ROS开发环境 ...

  5. Ubuntu18.04中Anaconda启动 Navigator

    Ubuntu18.04中Anaconda启动 Navigator 方法一: source ~/anaconda3/bin/activate root anaconda-navigator 1 2 方法 ...

  6. C语言snmp编程视频,在Ubuntu18.04中关于C语言使用netsnmp进行snmp编程

    前两天,发布了一篇关于Python使用netsnmp进行snmp编程的百家号文章,居然有不少人参看,阅读,因此顺便把C语言使用netsnmp的方法,说明一下供大家参考. 言归正传,进入主题,为了完整性 ...

  7. latex附录中放python代码_在Latex中插入Python代码

    这里指的插入是指最终能在生成的pdf中显示高亮的Python代码. 在Latex中插入Python代码,需要一个第三发的宏包pythonhighlight: https://github.com/ol ...

  8. Ubuntu18.04中搭建事件相机模拟器rpg-esim环境

    Ubuntu18.04中搭建事件相机模拟器rpg-esim环境 esim 是 ETH 开发的一款的模拟事件相机工作原理的仿真器,其是基于ROS环境的,在安装esim环境之前,需要先安装ROS.在官方给 ...

  9. 在Ubuntu18.04中安装谷歌地球Google Earth

    在Ubuntu18.04中安装谷歌地球Google Earth Google Earth在Linux系统中(Ubuntu18.04)的安装方法 1.安装必备组建 2.下载Google Earth安装包 ...

最新文章

  1. 黑科技,教你用Python打电话,控制手机技术,快来学一下
  2. bugku你必须让他停下
  3. python调用指定浏览器打开网页
  4. 5.2 Array类型
  5. 视觉目标跟踪大牛主页
  6. prolog寻找三角形个数
  7. 国产linux系统 深度6,国产Linux系统深度Deepin体验
  8. 如何自建微信外卖平台_怎么做微信外卖小程序_微信外卖小程序创建图文教程...
  9. 怎么给视频添加水印?几个简单的步骤就搞定
  10. SQLServer集群故障节点DISCONNECTED
  11. mac下chrome导入证书
  12. html为什么链接无效,如何揪出网页中的无效链接
  13. 数据即服务(DaaS)
  14. 【教程】在Radmixture运行无标杆成分名的任意祖源计算器的方法
  15. 新媒体运营教程:策划一场成功漂亮的活动策划
  16. 有序数组二分查找最接近的值
  17. 酒店管理系统功能结构图
  18. MySQL 数据库去重处理(小白)
  19. 在ArcGIS中创建Python工具(三)
  20. 杨永智:我有一些区块链应用的经验可以传授 | 硬创公开课

热门文章

  1. mysql 连接池 数量_mysql合理配置连接池数量
  2. RTT的线程同步篇——总结
  3. 数据库-MySQL-JDBC-execute、executeUpdate、executeQuery
  4. java制作头像框_头像框?搬空商店?活动还有二期?春活相关问题答疑
  5. html5画折线图,canvas绘制折线图(仿echarts)
  6. 一位Oracle老司机的openGauss初体验
  7. 资源放送丨《数据模型重构案例分享》PPT视频
  8. 周六直播丨细致入微 – OceanBase云平台安装部署实战
  9. 只需这10步,通过历史控制文件恢复数据库
  10. Oracle 20c 新特性:表达式参数值 Expressions Parameter Values