Началось все с того, что у меня сгорел служивший верой и правдой много лет Back-UPS 500VA. Не беда, подумал я и заменил его на APC Smart UPS 1000, что для моего сервера оказалось гораздо лучше. Сразу скажу, изначально сервер работал на форточках и проблем с бесперебойником не было. После замены ИБП и окончательно-бесповоротном переходе на Ubuntu я задался вопросом: собственно, как мониторить состояние сети электропитания и состояние бесперебойника? Погуглив некоторое время, я наткнулся на несколько инструкций по подключению бесперебойников к никсовым машинам, но почему-то они все были про Back UPS и USB. В частности, меня натолкнуло на написание этой статьи аналогичная статься на Хабре «Начальная настройка ИБП APC в Linux с точки зрения чайника».
Но у меня же старенький тысячник с ком-портом и про USB он и слыхом не слыхивал.
Предупреждаю! Внимательно выбирайте кабель COM-COM. Например, стандартный кабель от свича DES3526 вызывает аварийное отключение бесперебойника. У меня подошел проводок от другого UPS (на сколько помню — Sven).
Как выяснилось, демон для мониторинга/управления все-таки есть, только все инструкции к нему безнадежно устарели (включая официальные!).
Установка демона APC:
sudo apt-get install apcupsd
После установки начался геморрой с настройкой. Наступая на все грабли по очереди я все же добился своего:
Для снижения количества неудачных настроек для начала найдем порт ttyS:
dmesg | grep tty
У меня активных портов оказалось всего 2:
stealch@netlink-server:~$ dmesg | grep tty
[ 0.000000] console [tty0] enabled
[ 0.832457] 00:05: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[ 0.868830] 00:06: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
Редактируем /etc/apcupsd/apcupsd.conf
sudo nano /etc/apcupsd/apcupsd.conf
В разделе UPSNAME я обозвал свой бесперебойник:
UPSNAME Smart-ups 1000VA
В разделе UPSCABLE был выбран тип Smart:
UPSCABLE smart
В разделе UPSTYPE выбран apcsmart и нужный порт:
UPSTYPE apcsmart
DEVICE /dev/ttyS0
Далее осталось только сообщить демону, что мы не забыли его настроить:
sudo nano /etc/default/apcupsd
Меняем в строке ISCONFIGURED=no
на ISCONFIGURED=yes
И напоследок запустить сие чудо:
sudo /etc/init.d/apcupsd start
Когда эта скотина все-таки запустилась без ошибок, я сильно обрадовался. Осталось только вывести данные бесперебойника на веб-морду серва. Тут кроется загвоздочка: веб-морда у меня Webmin, модуль для него есть, но идет он не настроенный.
Установка модуля Apcupsd в Webmin:
Для начала скачаем модуль на рабочую станцию отсюда.
Затем зайдем в модули Webmin и добавим скачанный модуль.
Все установилось, но модуль ничего не показывает и пишет что не настроен — ничего! Допиливаем до рабочего состояния:
На сервере:
sudo apt-get install apcupsd-cgi
На рабочей станции приводим пути в настройках модуля в порядок:
Жмем сохранить и — вуаля!
*В связи с безвременной кончиной фотохостинга savepic скриншоты с уже подключенным Apc Smart UPS 3000 RM
Статью написал для того, чтобы никто больше не наступал на те же грабли и не гуглил бесполезными запросами.
Автор: Железный человек