Chinaunix首页 | 论坛 | 博客
  • 博客访问: 67269
  • 博文数量: 45
  • 博客积分: 67
  • 博客等级: 民兵
  • 技术积分: 240
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-28 15:43
文章分类
文章存档

2013年(1)

2012年(41)

2011年(3)

我的朋友

分类: 服务器与存储

2012-05-22 15:40:19

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 st1\:*{behavior:url(#ieooui) } /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}

mad-hacking下载相应的mib库包和工具包

需要下载snmpd-smartctl-connector-0.5.tar.bz2smartctl-snmp-mib-0.2.tar.bz2hacking-snmp-mib-0.1.tar.bz2snmpd-mdraid-connector-0.4.tar.bz2mdraid-snmp-mib-0.1.tar.bz2hacking-bash-lib-0.1.tar.bz2

二、如何使用mibs库制作动态链接库

1、先创建自定义mib文件TEST-MIB.txt,放在/usr/local/net-snmp/share/snmp/mibs

2echo "mibs +TEST-MIB" >> $HOME/.snmp/snmp.conf

       设置snmp开机启动:vi /etc/rc.local, 添加如下内容:

      SNMP_HOME=/usr/local/net-snmp/share/snmp

      SNMP_BIN_HOME=/usr/local/net-snmp/sbin

      SNMP_CONF_HOME=/root/.snmp

  $SNMP_BIN_HOME/snmpd -c $SNMP_HOME/snmpd.conf -c $SNMP_CONF_HOME/snmp.conf &

3、重启snmp服务。具体操作:ps -ef|grep snmpkill -9 snmppid

4、查看TEST-MIB文件结构,snmptranslate -IR -Tp testObjtestObjTEST-MIB库中定义的Ojbect

5、利用mib2c生成testObj.ctestObj.h文件:mib2c -c mib2c.scalar.conf testObj ;修改testObj.c文件;

6. 编写makefile,编译成testObj.so

CC=gcc

FLAGS=-I. `net-snmp-config --cflags` -g

DLFLAGS=-shared -fPIC -g

testObj.so: testObj.c

              $(CC) $(CFLAGS) $(DLFLAGS) -c -o testObj.o testObj.c

              $(CC) $(CFLAGS) $(DLFLAGS) -o testObj.so testObj.o

 

.PHONY : clean

clean :

              rm -f *.so *.o

 

7. 修改配置文件,加载动态库文件:vi /usr/local/net-snmp/share/snmp/snmpd.conf

   加入:dlmod testObj ${testObj.so所在绝对路径}/testObj.so

   

8. 启动snmpd

/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf -c /root/.snmp/snmp.conf -f -d -L –DtestObj

 

三、如何是mad-hacking可以在Debian下使用

1.      安装net-snmp
snmp
包以及snmpd

2.      安装net-snmpmibs
需要将所需要的标准mibs库以及支持raiddiskmibs库添加进系统。所有mibs库需要存放在/usr/share/mibs/netsnmp目录下。

3.      修改/etc/snmp/snmpd.conf中某些信息
rocommunity public default -V systemonly
改成rocommunity hacking

添加以下两条信息于文件末尾

pass_persist .1.3.6.1.4.1.38696.2.1 /usr/sbin/snmpd-smartctl-connector

pass_persist .1.3.6.1.4.1.38696.2.2 /usr/sbin/snmpd-mdraid-connector

4.     /etc/snmp/snmp.conf添加某些信息

mibs +SMARTCTL-MIB

mibs +HACKING-SNMP-MIB

mibs +MD-RAID-MIB

5.      /usr/sbin/下添加某些shell脚本,并配置好权限
snmpd-mdraid-connector  snmpd-smartctl-connector

6.      /usr/lib/下添加某些shell脚本,并配置好权限
snmpd-connector-lib.sh  hacking-bash.sh

7.      /etc/下添加某些shell脚本,并配置好权限
snmpd-mdraid-connector  snmpd-smartctl-connector

8.      /usr/sbin/下添加某些shell脚本,并配置好权限

   update-smartctl-cache  update-mdraid-cache

9.     建立/etc/snmp/myso目录并将mdRaid.sosmartCtl.so放入其中

10.  修改/etc/init.d/snmpd脚本
在此shell脚本中判断输入值前(即case $1前)将SNMPDOPTS变量修改为“-Lsd -Lf /dev/null -p /var/run/snmpd.pid -DsmartCtl -DmdRaid”,以此使net-snmp可以调用smartCtlmdRaid的动态链接库。

11.  一旦发生disk操作或者raid操作
需要先修改/etc目录下的snmpd-mdraid-connectorsnmpd-smartctl-connector,然后再调用update-smartctl-cacheupdate-mdraid-cache,之后才可使用snmpwalk命令进行查询

阅读(1163) | 评论(0) | 转发(0) |
0

上一篇:shell解释器

下一篇:printk实现分析

给主人留下些什么吧!~~