目标: 当机房断电后,UPS消耗电池时,即自动拨管理员的BP机报警,并在BP机上显示电池容量,若在电池消耗到一定量时仍不能恢复市电,服务器自动关机。 
适用范围:仅适用于 APC Smart 系列的UPS。 
所用软件:RedHat Linux 5.2, smartups-tools rpm package 
SmartUPSTools homepage: http://www.eXPloits.org/~rkroll/smartupstools 
SmartUPSTools rpm version: http://rufus.w3.org/linux/RPM/ 
安装指令: 
1.安装rpm package smartupstools-0.34-1.rpm 
2.接随UPS带的串行电缆到第二个串口,你必须给/dev/ttyS1写权限,并建立 
ups到ttyS1的符号链接,因为Smartupstools配置文件/usr/etc/ups.conf中用的 
设备是/dev/ups. 
[shisd@sh /dev]$ ls ups ttyS1 -l 
crwxrwxr-x 1 root root 4, 65 Jun 21 10:18 ttyS1 
lrwxrwxrwx 1 root root 5 Mar 9 14:40 ups -> ttyS1 
3.至此,然后启动UPS守护进程 #/etc/rc.d/init.d/upsd start, 记录文件是/var/log/ups 
4.创建 cron job 每分钟监视 /var/log/ups,根据文件中的数据变化做出相应的反应。 
5.# crontab -e 
加下面的行 * * * * * /root/ups.sh ( 每分钟运行/root/ups.sh) 
6.[shisd@sh root]$ more /root/ups.sh 
#!/bin/sh 
tail -c 3 /var/log/ups  grep "10" && mail -s "the UPS power fails" your_email_address 
tail -c 3 /var/log/ups  grep "10" && /usr/bin/ppp-on 
tail -1 /var/log/ups  cut -b23  grep "0" && /usr/bin/ppp-on 
tail -1 /var/log/ups  cut -b24  grep "1" && /sbin/shutdown -h now 
note: 
第一行表明 当最后一栏变为 10 时,表明UPS断电,email 通知网管 
第二行,同样,最后一栏变为 10 时,启动ppp开始拨号 
第三行,当电池容量低于100 (100%)时,一直拨号 
第四行,当电池容量低于20( 20%),自动关机。 
7. 对于ppp-on,仅改动拨号号码即可。 
[shisd@sh shisd]more /usr/bin/ppp-on 
BATTERY_STATUS=`/usr/bin/tail -1 /var/log/ups  cut -b23-25` 
TELEPHONE=127,1234567#,87654321*$BATTERY_STATUS 
Note: 1234567为BP机号码:87654321为回电号码 
就将变量BATTERY_STATUS值打在BP机上。  
(出处:http://www.sheup.com)