linux:ups

Strona główna.

Monitorowanie stanu UPS-a

Na przykładzie UPS-a: Liebert PSP XT 700 i systemu Debian 5.0.

UPS został wykryty przez jądro:

$ lsusb 
...
Bus 008 Device 002: ID 06da:ffff Phoenixtec Power Co., Ltd 
...
 
$ dmesg | grep input
[    0.548229] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
[    0.548421] input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input1
[    1.360191] generic-usb 0003:06DA:FFFF.0001: hiddev96,hidraw0: USB HID v1.11 Device [LIEBERT PowerSure Personal XT] on usb-0000:00:1d.2-2/input0

… i obsłużony przez sterownik HID.

Instalujemy pakiety:

$ aptitude install nut nut-cgi

Konfiguracja

/etc/default/nut:

START_UPSD=yes

Należy skopiować pozostałe pliki konfiguracyjne z przykładów, na ich właściwe miejsce.

cp /usr/share/doc/nut/examples/ups.conf.sample /etc/nut/ups.con
cp /usr/share/doc/nut/examples/upsd.conf.sample /etc/nut/upsd.conf
chmod 600 /etc/nut/upsd.conf
cp /usr/share/doc/nut/examples/upsd.users.sample /etc/nut/upsd.users
chown nut /etc/nut/upsd.users 
chmod 600 /etc/nut/upsd.users 

ups.conf:

[liebert]
                 driver = usbhid-ups
                 port = auto
                 vendorid = 06da

upsd.conf:

ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32

ACCEPT localhost

upsd.users:

        [admin]
                password = mypass
                allowfrom = localhost
                actions = SET
                instcmds = ALL
$ tail /var/log/syslog
...
Feb  2 01:26:36 mbw upsd[6086]: listening on 0.0.0.0 port 3493
Feb  2 01:26:36 mbw upsd[6086]: Connected to UPS [liebert]: usbhid-ups-liebert
Feb  2 01:26:36 mbw upsd[6087]: Startup successful

Usługa monitorująca stan UPSa i wyłączająca system

/etc/default/nut:

START_UPSMON=yes
zcat /usr/share/doc/nut/examples/upsmon.conf.sample.gz > /etc/nut/upsmod.conf

upsmon.conf:

MONITOR liebert@localhost 1 admin mypass master

Na końcy należy uruchomić NUT-a:

/etc/init.d/nut restart

Panel WWW

$ cp /usr/share/doc/nut-cgi/examples/hosts.conf.sample /etc/nut/hosts.conf
$ cp /usr/share/doc/nut-cgi/examples/upsset.conf.sample /etc/nut/upsset.conf
$ cp /usr/share/doc/nut-cgi/examples/upsstats.html.sample /etc/nut/upsstats.html
$ cp /usr/share/doc/nut-cgi/examples/upsstats-single.html.sample /etc/nut/upsstats-single.html

hosts.conf:

MONITOR liebert@localhost "Local UPS"

W konfiguracji serwera HTTP należy dodać autoryzację dla dostępu do katalogu cgi-bin, a następnie: upsset.conf:

I_HAVE_SECURED_MY_CGI_DIRECTORY

Widok zbiorczy

Szczegóły urządzenia

Oczywiście dostęp do panelu powienien być zabezpieczony hasłem/SSL-em.