UPS在停電時可以使用電池繼續供電,但電池電力耗完,造成不正常關機。
NUT(Network UPS Tools)程式,可以監控UPS,在斷電後將系統正常關閉。
1.安裝:用 ports 安裝
#cd /usr/ports/sysutils/nut
#make install clean
#make install clean
2.設定:
/usr/local/etc/nut/ups.conf
#APC SmartUPS
#-------------------------------------------
[apc]
driver = apcsmart
port = /dev/cuaa0
sdtype = 1
#-------------------------------------------
這個檔主要是定義 ups 的廠牌和訊號線接在哪裡
driver : ups 的廠牌,可用的參數可以查 /usr/local/libexec/nut
port: /dev/cuaa0 (COM1) /dev/cuaa1 (COM2) ...... 以此類推
/usr/local/etc/nut/ups.conf
#APC SmartUPS
#-------------------------------------------
[apc]
driver = apcsmart
port = /dev/cuaa0
sdtype = 1
#-------------------------------------------
這個檔主要是定義 ups 的廠牌和訊號線接在哪裡
driver : ups 的廠牌,可用的參數可以查 /usr/local/libexec/nut
port: /dev/cuaa0 (COM1) /dev/cuaa1 (COM2) ...... 以此類推
/usr/local/etc/nut/upsd.conf
#-------------------------------------------
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACL server2 192.168.0.2/32
ACCEPT localhost
ACCEPT server2
REJECT all
#-------------------------------------------
這個用來控制網路連線的權限 nut 會啟動 upsd 隨時監聽 tcp/udp port 3305 來提供 UPS 的狀態 或下達關閉系統的指令給 upsmon 利用 upsd.conf 可以設定哪些機器才可以連線。
#-------------------------------------------
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACL server2 192.168.0.2/32
ACCEPT localhost
ACCEPT server2
REJECT all
#-------------------------------------------
這個用來控制網路連線的權限 nut 會啟動 upsd 隨時監聽 tcp/udp port 3305 來提供 UPS 的狀態 或下達關閉系統的指令給 upsmon 利用 upsd.conf 可以設定哪些機器才可以連線。
/usr/local/etc/nut/upsd.users
#---------------------------------------------
[upsmon_user]
password = #PASSWORD#
allowfrom = localhost
upsmon master
#---------------------------------------------
設定 UPSD 允許連線 user 清單,#PASSWORD# 請改為你想用的密碼。
#---------------------------------------------
[upsmon_user]
password = #PASSWORD#
allowfrom = localhost
upsmon master
#---------------------------------------------
設定 UPSD 允許連線 user 清單,#PASSWORD# 請改為你想用的密碼。
/usr/local/etc/nut/upsmon.conf
#---------------------------------------------
MONITOR apc@localhost 1 [username] [password] master
#這裡主要是告訴 upsmon 該向哪一台的 upsd 取得 UPS 的狀態。
#預設是在 UPS 處於 Low Battery 的狀態才會將作業系統 shutdown
3.開機啟動NUTMONITOR apc@localhost 1 [username] [password] master
#這裡主要是告訴 upsmon 該向哪一台的 upsd 取得 UPS 的狀態。
#預設是在 UPS 處於 Low Battery 的狀態才會將作業系統 shutdown
mv /usr/local/etc/rc.d/nut.sh.sample /usr/local/etc/rc.d/nut.sh
4.監看UPS
/usr/local/etc/nut/hosts.conf
MONITOR apc@localhost "Local UPS"
/usr/local/etc/nut/upsset.conf
<Files upsset.cgi>
deny from all
allow from 192.168.0
</Files>
mv upsstats-single.html.sample upsstats-single.html
mv upsstats.html.sample upsstats.html
瀏覽器 http://網址/cgi-bin/nut/upsstats.cgi
/usr/local/etc/nut/hosts.conf
MONITOR apc@localhost "Local UPS"
/usr/local/etc/nut/upsset.conf
<Files upsset.cgi>
deny from all
allow from 192.168.0
</Files>
mv upsstats-single.html.sample upsstats-single.html
mv upsstats.html.sample upsstats.html
瀏覽器 http://網址/cgi-bin/nut/upsstats.cgi
5.未接ups的伺服器,透過網路接收主控端的UPS狀態設定/usr/local/etc/nut/upsmon.conf
MONITOR apc@[ups.server.ip] 1 [username] [password] slave
啟動/usr/local/sbin/upsmon localhost
MONITOR apc@[ups.server.ip] 1 [username] [password] slave
啟動/usr/local/sbin/upsmon localhost