Начальная настройка ИБП APC в Linux с точки зрения чайника
Купив источник бесперебойного питания от APC (а именно — APC Back-UPS ES 550VA ), я с удивленьем обнаружил, что «из коробки» он не может похвастаться тесной дружбою с Linux. Конечно, XFCE Power Manager, входящий в состав XFCE 4.6, подхватил и разпознал UPS, но всё, на что он оказался способен — отображение в трее уровня заряда. Какие-либо настройки отсутствовали начисто, нельзя было даже задать выключение ПК при достижении определённого уровня заряда.
Обратившись за консультацией в гугл, я узнал о существовании замечательного демона apcupsd, чья роль заключается в — никогда не поверите — управлении ИБП от APC. Но, как оказалось, практически все руководства по его начальной настройке были откровенно устаревшими — включая, как ни странно, официальный мануал. Споткнуться приходилось уже в самом начале о «cat /proc/bus/usb/devices». Поговорив с гуглом серьёзным и доверительным тоном, я добился от него ссылки на действующий мануал, художественным переводом коего с дополнениями из иных источников сия статья и является.
Итак, начнём с установки самого apcupsd:
sudo apt-get install apcupsd
Разумеется, вышесказанное справедливо для Debian и его производных, включая Ubuntu. Если в вашем дистрибутиве не используется apt-get — думаю, вы всё равно знаете, как поставить необходимый пакет. Надеюсь на это.
Теперь мы отредактируем конфигурационный файл apcupsd:
sudo gedit /etc/apcupsd/apcupsd.conf
В данном случае нас интересуют всего три параметра:
UPSCABLE — указываем тип кабеля, которым наш UPS подключён к ПК. В комментариях указаны возможные типы — simple, smart, ether, usb. Нынешние домашние модели подключаются через USB — следовательно, достаточно дописать usb
UPSTYPE — тип подключённого UPS. В комментариях перечислены возможные типы и соответствующие им значения параметра DEVICE, наш же выбор — тип usb
DEVICE — закомментируем данную строку, поставив перед ней знак # — для USB-устройств она не нужна
Сохраняем изменённый конфигурационный файл, открываем следующий:
sudo gedit /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes, сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
Теперь достаточно запустить apcupsd:
sudo /etc/init.d/apcupsd start
Если он уже был запущен — вместо start нам, разумеется, надо будет писать restart.
Всё, ваш ПК теперь связан с новеньким ИБП прочными узами дружбы.
А теперь немножко о том, что мы можем настроить в обширном /etc/apcupsd/apcupsd.conf:
ONBATTERYDELAY — время (в секундах), определяющее задержку между обнаружением сбоя электропитания и отсылкой события onbattery. По умолчанию — 6
BATTERYLEVEL — уровень заряда батареи (в процентах), при котором инициируется выключение компьютера. По умолчанию — 5
MINUTES — расчётное время остаточной работы (в минутах), при достижении которого инициируется выключение компьютера. По умолчанию — 3
TIMEOUT — параметр актуален для старых ИБП, неспособных определять свой уровень заряда. Задаёт время (в секундах) между сбоем электропитания и отключением компьютера. Для современного ИБП параметр стоит оставить на 0, но выставление иного значения может быть удобно для тестирования работы ИБП. Например, если выставить 30 и выдернуть шнур из розетки, уже через полминуты apcupsd продемонстрирует своё умение выключать компьютер
Выполнения одного из условий (BATTERYLEVEL, MINUTES или TIMEOUT) достаточно для выключения компьютера. Более тонкая настройка не описывается, ибо её необходимость для домашнего пользователя весьма сомнительна.
Долго сказка сказывается, да недолго дело делается: полагаю, описанные действия пользователь произведёт за пару минут. Надеюсь, данная статья поможет кому-нибудь подружить его ИБП APC с Linux, сэкономив время и не завязнув в устаревших мануалах.
Настройка APC Smart UPS 1000 в Ubuntu server 14.04 LTS и установка модуля Webmin
Началось все с того, что у меня сгорел служивший верой и правдой много лет Back-UPS 500VA. Не беда, подумал я и заменил его на APC Smart UPS 1000, что для моего сервера оказалось гораздо лучше. Сразу скажу, изначально сервер работал на форточках и проблем с бесперебойником не было. После замены ИБП и окончательно-бесповоротном переходе на Ubuntu я задался вопросом: собственно, как мониторить состояние сети электропитания и состояние бесперебойника? Погуглив некоторое время, я наткнулся на несколько инструкций по подключению бесперебойников к никсовым машинам, но почему-то они все были про Back UPS и USB. В частности, меня натолкнуло на написание этой статьи аналогичная статься на Хабре «Начальная настройка ИБП APC в Linux с точки зрения чайника».
Но у меня же старенький тысячник с ком-портом и про USB он и слыхом не слыхивал.
Предупреждаю! Внимательно выбирайте кабель COM-COM. Например, стандартный кабель от свича DES3526 вызывает аварийное отключение бесперебойника. У меня подошел проводок от другого UPS (на сколько помню — Sven).
Как выяснилось, демон для мониторинга/управления все-таки есть, только все инструкции к нему безнадежно устарели (включая официальные!).
sudo apt-get install apcupsd
После установки начался геморрой с настройкой. Наступая на все грабли по очереди я все же добился своего:
Для снижения количества неудачных настроек для начала найдем порт ttyS:
У меня активных портов оказалось всего 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 я обозвал свой бесперебойник:
В разделе UPSCABLE был выбран тип Smart:
В разделе UPSTYPE выбран apcsmart и нужный порт:
Далее осталось только сообщить демону, что мы не забыли его настроить:
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
Статью написал для того, чтобы никто больше не наступал на те же грабли и не гуглил бесполезными запросами.
Настройка APC Smart UPS 1000 в Ubuntu server 14.04 LTS и установка модуля Webmin
Началось все с того, что у меня сгорел служивший верой и правдой много лет Back-UPS 500VA. Не беда, подумал я и заменил его на APC Smart UPS 1000, что для моего сервера оказалось гораздо лучше. Сразу скажу, изначально сервер работал на форточках и проблем с бесперебойником не было. После замены ИБП и окончательно-бесповоротном переходе на Ubuntu я задался вопросом: собственно, как мониторить состояние сети электропитания и состояние бесперебойника? Погуглив некоторое время, я наткнулся на несколько инструкций по подключению бесперебойников к никсовым машинам, но почему-то они все были про Back UPS и USB. В частности, меня натолкнуло на написание этой статьи аналогичная статься на Хабре «Начальная настройка ИБП APC в Linux с точки зрения чайника».
Но у меня же старенький тысячник с ком-портом и про USB он и слыхом не слыхивал.
Предупреждаю! Внимательно выбирайте кабель COM-COM. Например, стандартный кабель от свича DES3526 вызывает аварийное отключение бесперебойника. У меня подошел проводок от другого UPS (на сколько помню — Sven).
Как выяснилось, демон для мониторинга/управления все-таки есть, только все инструкции к нему безнадежно устарели (включая официальные!).
sudo apt-get install apcupsd
После установки начался геморрой с настройкой. Наступая на все грабли по очереди я все же добился своего:
Для снижения количества неудачных настроек для начала найдем порт ttyS:
У меня активных портов оказалось всего 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 я обозвал свой бесперебойник:
В разделе UPSCABLE был выбран тип Smart:
В разделе UPSTYPE выбран apcsmart и нужный порт:
Далее осталось только сообщить демону, что мы не забыли его настроить:
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
Статью написал для того, чтобы никто больше не наступал на те же грабли и не гуглил бесполезными запросами.