…生活與工作…個人的生活雜記….

讓QNAP NAS的UPS在停電時通知電腦(泛指windows系列)關機

大家有沒有想過,在你買了台貴貴的NAS之後,為了保護有如很多謎團的資料,又去買的一台貴貴的UPS
讓停電時UPS可以通知並讓NAS關機
可是你的PC呢?可以接上去但是沒有人會通知PC關機
因此,在花了一陣子google之後,發現了以下方法

QNAP的NAS是使用NUT(Network UPS Tools)來執行UPS的動作,所以在PC端安裝winNUT(The Windows Network UPS Tools)就可以了。

www.est.idv.tw-1606861270

QNAP相關設定在外接裝置-不斷電系統,設定就如上。

接著是PC端的設定

有2套軟體可以使用,一個是老牌的winNUT,另一個是簡化的winNUT-client

如果想要多些功能,或是再用winNUT做些什麼的話,可以安裝使用winNTU。
但若是沒有其他目的,建議可以安裝winNUT-client。

winNUT

下載位置:
http://winnut.googlecode.com/files/WinNUT-2.0.0.4a-Installer.exe

點選 WinNUT Configuration Tool

主要設定C:\Program Files (x86)\WinNUT\upsmon.conf

點選編輯(Edit)後找個地方加入

MONITOR qnapups@192.168.196.1 1 admin 12345 slave

這段訊息可以在NAS的 /mnt/HDA_ROOT/.config/ups/upsmon.conf找到

#       [monmaster]
#               password  = blah
#               allowfrom =     (whatever applies to this host)
#               upsmon master   (or slave)
#
# "master" means this system will shutdown last, allowing the slaves
# time to shutdown first.
#
# "slave" means this system shuts down immediately when power goes critical.
#
# Examples:
#
# MONITOR myups@bigserver 1 monmaster blah master
# MONITOR su700@server.example.com 1 upsmon secretpass slave

MONITOR qnapups@localhost 1 admin 123456 master

其中 system的格式是 @[:] upsname需參考NAS的 /mnt/HDA_ROOT/.config/ups/upsmon.conf username與password 需參考NAS的 /mnt/HDA_ROOT/.config/ups/upsd.users 最後 “master”|”slave” 當然是slave

OK後儲存並啟動就OK了

最後看一下log檔

Level     INFO	04/10/2020 17:04:39	Detected OS as Windows 7
Level   NOTICE	04/10/2020 17:04:39	Network UPS Tools upsmon 2.0.0.4
Level     INFO	04/10/2020 17:04:39	Config Load: MINSUPPLIES set to 1
Level     INFO	04/10/2020 17:04:39	Config Load: NOTIFYCMD set to c:\Program Files\WinNUT\alertPopup.exe
Level     INFO	04/10/2020 17:04:39	Config Load: POLLFREQ set to 5
Level     INFO	04/10/2020 17:04:39	Config Load: POLLFREQALERT set to 5
Level     INFO	04/10/2020 17:04:39	Config Load: HOSTSYNC set to 15
Level     INFO	04/10/2020 17:04:39	Config Load: DEADTIME set to 15
Level     INFO	04/10/2020 17:04:39	Config Load: NOTIFYMSG set to ONLINE : UPS %s is getting line power
Level     INFO	04/10/2020 17:04:39	Config Load: NOTIFYMSG set to ONBATT : Someone pulled the plug on %s
Level     INFO	04/10/2020 17:04:39	Config Load: RBWARNTIME set to 43200
Level     INFO	04/10/2020 17:04:39	Config Load: NOCOMMWARNTIME set to 300
Level     INFO	04/10/2020 17:04:39	Config Load: FINALDELAY set to 5
Level     INFO	04/10/2020 17:04:39	UPS: qnapups@192.168.196.20 (slave) (power value 1)

如果大致上是這樣就OK了

WinNUT-client

下載位置:

1.5版 https://sourceforge.net/projects/winnutclient/files/winnutclient/1.5.0/

V1.7.2.1版(只有主程式) https://github.com/gawindx/WinNUT-Client/tree/1.7/Build

V1.7.2.1執行時會自解nut.ini,內容如下:

[Connection]
Server address=nutserver host
Port=3493
UPS name=ups
Delay=5000
AutoReconnect=0
[Colors]
Clocks Color=0x00D4D0C8
Panel Color=0x00D4D0C8
[Appearance]
Minimize to tray=0
Close to tray=0
Minimize on Start=0
Start with Windows=0
Default Language=en-US
Language=system
[Power]
Shutdown Limit Battery Charge=30
Shutdown Limit UPS Remain Time=120
Shutdown Immediately=1
Delay To Shutdown=15
Allow Extended Shutdown Delay=0
Extended Shutdown Delay=15
[Calibration]
Min Input Voltage=170
Max Input Voltage=270
Min Output Voltage=170
Max Output Voltage=270
Min Input Frequency=20
Max Input Frequency=70
Min UPS Load=0
Max UPS Load=100
Min Batt Voltage=0
Max Batt Voltage=20

Server address 修改成QNAP的IP,UPS name 設定為 qnapups。

[Calibration]區塊設定如下:

[Calibration]
Min Input Voltage=90
Max Input Voltage=140
Min Output Voltage=100
Max Output Voltage=150
Min Input Frequency=50
Max Input Frequency=65
Min UPS Load=0
Max UPS Load=100
Min Batt Voltage=16
Max Batt Voltage=28

如果不會修改的也可以直接用Seting按鈕設定

設定完按下Connetcion就可以了,成功執行時在下方會顯示外,也可以在File->List UPS Vars看到相關資訊

更新 WinNUT-Client V2

下載最新版本 在這邊

點擊桌面的WinNUT-client執行程式

選擇File->Import Ini File(v1.x),然後把舊版的設定檔匯入。舊版如果沒有變動,應該就在c:\winnut。

如果沒有舊版的設定檔,那就點選Setting來設定。

大致上就是把以前的ini檔做圖形化這樣,

  • NUT host : QNAP NAS 的IP
  • NUT Port : 3493
  • UPS Name : qnapups
  • Login : qnapups
  • Password : 123456

UPS的顯示參數就依照這樣輸入就可以,像我目前用的CP1000PFCLCD顯示輸出電壓就不是很正確(問題原因在此),測量起來是112V,顯示卻到138V。還有像是Battery Voltage也是顯示在24V。

其他部分就看自己的需求設定就可以了。

設定完後最好是重新啟動程式

V2版目前只有簡體中文,繁中的需求已經送出了,甚麼時候會上我也不知道(笑