24小时在线的设备,不免要加个监控。我这里用的是snmp和smartmontools。 smartmontools可以监控硬盘的各种状态,这个是非常重要的。
使用自定义的脚本把smartmontools获取到的状态通过snmp协议发送给cacti,就可以实现硬盘的监控了。
本例中主要监控硬盘温度、cpu使用率、网络使用率等。
首先安装snmp,smartmontools和super,super软件包是提权用的。由于运行snmpd的用户snmp没有读取设备的权限,su和sudo只能在终端里面使用,后台运行的程序无法获得root权限。这个问题折腾了我很久,由于英语水平实在一般,逛了几天debian官网才找到了super这个软件包,可以为其他用户以root的身份执行特定指令。
apt-get update
apt-get install snmpd
apt-get install smartmontools
apt-get install super
配置snmpd.conf,编辑/etc/snmp/snmpd.conf。
配置团体名、监听端口等等,具体看配置,应该很容易明白。
特别注意的是新版本的snmpd不能使用exec来执行自定义脚本,改成用extend了。注我的snmpd版本5.4.3
agentaddress UDP:161
sysLocation home
sysContact D2O
sysName PogoPlug
com2sec ro default public
com2sec rw localhost private
group public v1 ro
group public v2c ro
group public usm ro
group private v1 rw
group private v2c rw
group private usm rw
view all included .1
access

本文介绍了如何使用snmpd、smartmontools和super软件包监控PogoPlug设备,包括硬盘温度、CPU使用率和网络使用率。通过自定义脚本将smartmontools获取的数据通过snmp发送给cacti,实现硬盘监控。配置snmpd.conf,使用extend取代exec,并创建允许root权限执行的shell脚本,解决权限问题。
最低0.47元/天 解锁文章
7920





