Network UPS Tools
USB接続のUPSを想定する。
usb接続を確認する。
lsusb
必要パッケージをインストールする。
apt install nut
サーバー側のセットアップ
vi /etc/nut/nut.conf
MODE=netserver
vi /etc/nut/ups.conf
[myups]
driver = usbhid-ups
# driver = powerpanel
port = auto
# vendorid = 0764
# productid = 0501
# subdriver = ippon
desc = "Cyber Power System, Inc. CP1500 AVR UPS"
vi /etc/nut/upsd.conf
LISTEN 127.0.0.1 3493
LISTEN localhost 3493
#LISTEN ::1 3493
LISTEN UPSケーブルを直接接続 しているホスト 3493
vi /etc/nut/upsd.users
[upsmaster]
password = masterpass
actions = SET
instcmds = ALL
# allowfrom = localhost
upsmon master
#[upsadmin]
# password = upspass
# allowfrom = localhost
# actions = SET
# instcmds = ALL
#[upsmon]
# password = monpass
# allowfrom = localhost
# upsmon slave
[upsuser]
password = password
actions = SET
instcmds = ALL
# allowfrom = localhost
upsmon slave
vi /etc/nut/upsmon.conf
#RUN_AS_USER upsuser
#MONITOR myups@localhost 1 upsmaster masterpass master
MONITOR myups@localhost 1 upsuser password slave
#MONITOR myups@localhost 1 upsuser password master
#MONITOR myups@127.0.0.1 1 upsmaster masterpass master
MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -h +0"
#SHUTDOWNCMD "systemctl poweroff"
POLLFREQ 20
#POLLFREQ 5
#POLLFREQALERT 5
POLLFREQALERT 20
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5
UPSの状況を確認する。
upsc myups@localhost
結果が表示されない場合には、ドライバーが停止しているため、起動する。
systemctl start nut-driver
若しくは
upsdrvctl start
クライアント側のセットアップ
vi /etc/nut/upsmon.conf
MONITOR UPS@UPSに接続している機器のIPアドレス 1 monuser pass slave
vi /etc/nut/nut.conf
upsc UPS@UPSに接続している機器のIPアドレス
OS起動時にnutサービスを起動ように設定する。
vi /etc/default/nut
START_UPSD=yes
START_UPSMON=yes
サービスを再起動する。
service restart nut-server service restart nut-client
クライアント側の状態確認
service nut-client status
監視できなくなる場合
Error: Data staleとなり、UPS状態が監視できない場合、以下のパラメータに変更する。
vi /etc/nut/ups.conf
pollinterval = 15
vi /etc/nut/upsmon.conf
MAXAGE = 15
vi /etc/nut/upsmon.conf
DEADTIME = 15
NUTを再起動する。
/etc/init.d/nut-server restart /etc/init.d/nut-client restart
上のパラメータを色々変えてみて、それでもダメなら、以下のコマンドで・・・
/usr/sbin/upsdrvctl start