LINUX 與 UPS(轉)

ba發表於2007-08-12
LINUX 與 UPS(轉)[@more@]網上介紹的linux與ups的連線都不太實用,我在剛接觸linux時,那是在4年前,獨創一種簡單有效的辦法,就是根據網線的狀態來判斷是否需要關機。
原理:在掉電時,一般交換機不會被ups供電,此時網路卡的狀態就有link變成了unlink,如果幾秒種之內沒有恢復到link狀態,就可以斷定,市電已斷。此時可以啟動shutdown程式了。
這個shutdown放在哪裡呢?有個很方便的地方,就是網路卡的那些script,找到網路卡down時呼叫的script,放在最後就行了。
在debian下,沒有找到那些網路卡的script,只好寫了一個迴圈的一直執行的指令碼,
檢查一次網路卡狀態後就睡30秒,指令碼如下:
/usr/sbin/ah_ups:


#!/bin/bash

while [ -z "`mii-tool |grep 'link ok'`" ]
do
sleep 10
done

echo link ok!

until [ -z "`mii-tool |grep 'link ok'`" ]
do
sleep 30
until [ -z "`mii-tool |grep 'link ok'`" ]
do
sleep 30
#cd /usr/local/softether
#nohup ./se_hub &
#ping -c1 -I 61.156.20.87 61.156.20.254 -c 1
done
done
poweroff

在/etc/init.d/做一個服務呼叫:
/etc/init.d/ups:
#!/bin/bash
#迴圈監測網路卡狀態,提供ups關機功能
http://anheng.com.cn/news/html/net_admin_blog/370.html

# 99-99
http://anheng.com.cn/news/html/net_admin_blog/370.html

nohup /usr/sbin/ah_ups &
http://anheng.com.cn/news/html/net_admin_blog/370.html


設定開機時執行上面的這個服務,行了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-950339/,如需轉載,請註明出處,否則將追究法律責任。

相關文章