两种办法:

1)pass方式

/etc/snmp/snmpd.conf

写脚本

脚本需要注意:要连续输出三行:1、OID  2、类型  3、值

如果不按照这个规定,直接输出值,将会报错。

检查

第二种方法:extend方法

/etc/snmp/snmpd.conf最后增加一行:

extend .1.3.6.1.4.1.9721.2 mylx /usr/bin/bash  /tmp/lx.sh

写脚本(直接输出,不必象pass方式那样有规定)

#!/bin/sh
#echo $2 #因为snmpd是用EXEC -g MIBOID来调脚本的,所以MIBOID是第二个参数
#echo string isdata=`df -h | grep -c '/adata'`
mystr=NO
if [ $isdata -eq 1 ]; then
mystr=OK;
fi
echo $mystr

但是,这里定义的OID并不是可以直接引用的OID,具体引用值需要snmpwalk跑一下

.1.3.6.1.4.1.9721.2.1.0 = INTEGER: 1
.1.3.6.1.4.1.9721.2.2.1.2.4.109.121.108.120 = STRING: "/usr/bin/bash"
.1.3.6.1.4.1.9721.2.2.1.3.4.109.121.108.120 = STRING: "/tmp/lx.sh"
.1.3.6.1.4.1.9721.2.2.1.4.4.109.121.108.120 = ""
.1.3.6.1.4.1.9721.2.2.1.5.4.109.121.108.120 = INTEGER: 5
.1.3.6.1.4.1.9721.2.2.1.6.4.109.121.108.120 = INTEGER: 1
.1.3.6.1.4.1.9721.2.2.1.7.4.109.121.108.120 = INTEGER: 1
.1.3.6.1.4.1.9721.2.2.1.20.4.109.121.108.120 = INTEGER: 4
.1.3.6.1.4.1.9721.2.2.1.21.4.109.121.108.120 = INTEGER: 1
.1.3.6.1.4.1.9721.2.3.1.1.4.109.121.108.120 = STRING: "NO"
.1.3.6.1.4.1.9721.2.3.1.2.4.109.121.108.120 = STRING: "NO"
.1.3.6.1.4.1.9721.2.3.1.3.4.109.121.108.120 = INTEGER: 1
.1.3.6.1.4.1.9721.2.3.1.4.4.109.121.108.120 = INTEGER: 0
.1.3.6.1.4.1.9721.2.4.1.2.4.109.121.108.120.1 = STRING: "NO"

net-snmp 自定义OID利用脚本获取值的更多相关文章

  1. 自学Zabbix11.6 Zabbix SNMP自定义OID

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.6 Zabbix SNMP自定义OID 为什么要自定义OID? 前面已经讲过 ...

  2. (39)zabbix snmp自定义OID nginx监控实例

    为什么要自定义OID? 前面的文章已经讲过zabbix如何使用snmp监控服务器,但是他有一个很明显的局限性:只能监控定义好的OID项目 假如我们想知道nginx进程是否在运行?在没有zabbix a ...

  3. snmp自定义OID与文件下载----服务器端配置

    客户端使用命令工具:snmpwalk 服务端开启服务 snmp service.下载安装 net-snmp. 最近做了一些工作,记性较差感觉还是记下来比较好,毕竟网上能查到的有用的资料太少了. 自定义 ...

  4. 利用脚本获取mysql的tps,qps等状态信息

    #!/bin/bash mysqladmin -uroot -p'123456' extended-status -i1|awk 'BEGIN{local_switch=0;print "Q ...

  5. Python 调用snmp自定义OID实现监控

    http://kkkkkk.blog.51cto.com/468162/1172726 http://blog.csdn.net/mirahs/article/details/49619729

  6. label标签利用jquery获取值得方式为$("#message").html()

    label标签利用jquery获取值的方式为$("#message").text(), 赋值的方式为:$("message").html("北京欢迎你 ...

  7. 工控随笔_02_西门子_WinCC的IO域利用C脚本返回值

    WinCC的输入输出域用来显示信息或者接受操作人员的输入.当作为显示功能时,只有直接的变量连接 才能正常的显示,如果使用动态对话框进行设置且用了表达式则不能正确显示. 但是有时候我们在WinCC变量管 ...

  8. Django学习——Django settings 源码、模板语法之传值、模板语法之获取值、模板语法之过滤器、模板语法之标签、自定义过滤器、标签、inclusion_tag、模板的导入、模板的继承

    Django settings 源码 """ 1.django其实有两个配置文件 一个是暴露给用户可以自定义的配置文件 项目根目录下的settings.py 一个是项目默 ...

  9. shell脚本获取mysql插入数据自增长id的值

    shell脚本获取mysql插入数据自增长id的值 在shell脚本中我们可以通过last_insert_id()获取id值,但是,需要注意的是,该函数必须在执行插入操作的sql语句之后,立即调用,否 ...

  10. CTF必备技能丨Linux Pwn入门教程——利用漏洞获取libc

    Linux Pwn入门教程系列分享如约而至,本套课程是作者依据i春秋Pwn入门课程中的技术分类,并结合近几年赛事中出现的题目和文章整理出一份相对完整的Linux Pwn教程. 教程仅针对i386/am ...

随机推荐

  1. 常用IBatis属性

    <?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="GoodDet ...

  2. ubuntu22.04LTS下编译glfw

    环境准备 # 预装cmake sudo apt install cmake # 下载源码 git clone https://github.com/glfw/glfw.git 编译 # cmake初始 ...

  3. 简易舰c远征计时器(HTML)

    有时候项目闲下来想休息的时候会跑跑舰c远征,但计时比较麻烦. 所以每个现场都会写那么几个工具.以前是vba的,这次写了个HTML的,感觉还算易用就仍上来了.省得以后换现场还得再写. 纯粹是偷懒时做的, ...

  4. WPF textbox实现单击全选

  5. 制作docker php5.6的镜像

    docker pull centos Docker run -it --name="centos-test" centos yum install wget  # 报错在后面有处理 ...

  6. Java DelayQueue包装类

    public class DelayQueueWrapper<T> { private TimeUnit timeUnit; private final Long capacity; pr ...

  7. Flink Application Development DataStream API Operators Overview-- Flink应用程序开发DataStream API操作符概览

    目录 概览 DataStream转换 物理分区 任务链和资源组 翻译原文- Application Development DataStream API Operators 概览 操作符将一个或多个D ...

  8. spring注解SQL注意事项

    目前有两个类:机构.职员 package com.common.vo; public class Org{ public long id; public String name; public Str ...

  9. Flutter开发 备用网站地址

    Flutter开发之环境配置_移动开发_System.o的博客-CSDN博客: https://blog.csdn.net/lyh1299259684/article/details/80505185 ...

  10. Js文章内容监听复制代码

    若别人在你的网站复制内容将会提示,请把监听提示添加到文章内容div或者直接将代码复制粘贴到所需要的文件中! <script> //监听ctrl+v 复制 document.addEvent ...