Из сторонних инструментов наиболее широкими возможностями обладают apcupsd и Network UPS Tool (NUT). Далее будет приведён пример использования NUT для мониторинга состояния бытового ИБП.
NUT это клиент-серверный инструмент: сервер взаимодействует с источниками бесперебойного питания и предоставляет универсальный интерфейс для получения информации клиентам. Клиенты обращаются к NUT-серверу, запрашивают информацию и меняют параметры ИБП через тот же универсальный интерфейс.
В случае персонального компьютера сервер и клиент «поднимаются» на одной машине, но взаимодействуют между собой так же, как если бы они находились на разных хостах в сети.
Приступаем к настройке. Начальные условия: ИБП IPPON BACK Basic 650VA, питающий домашний медиа-центр под управлением Xubuntu 16.04, на котором мы и запустим NUT.
Установим необходимые пакеты:
apt-get install nut-server nut-client nut-monitor
Открываем в редакторе файл «/etc/nut/ups.conf» и добавляем в конце описание нашего ИБП:
[main] driver = blazer_usb port = auto desc = IPPON BACK Basic 650VA
В квадратных скобках указывается имя ИБП. Если к серверу подключено несколько ИБП – то для каждого необходимо указывать уникальное имя. Остальные параметры:
- driver: драйвер для взаимодействия с устройством. В выборе драйвера полезным может быть файл «/usr/share/nut/driver.list» из поставки nut-server.
- port: имя файла устройства. Если ИБП один, то можно указать «auto».
- desc: Описание ИБП. Произвольная строка.
Далее нам надо открыть файл «/etc/nut/upsd.users» и добавить пользователя, который сможет обращаться к серверу для наблюдения за ИБП:
[upsmon] password = m0np4ss actions = SET FSD instcmds = ALL upsmon master
Здесь в квадратных скобках указывается логин. Остальные поля:
- password: пароль пользователя.
- actions: допустимые действия («SET» — изменение параметров ИБП, «FSD» — возможность выключения ИБП).
- instcmds: допустимые команды. Значение «ALL» разрешает любые команды. За подробностями лучше всего обратиться к man-странице «upsd.users».
- upsmon: тип пользователя. За подробностями так же лучше всего обратиться к документации.
Далее нужно описать подключение NUT Client к серверу под созданным выше пользователем в файле «/etc/nut/upsmon.conf». Для этого достаточно добавить в файл одну строку:
# Строка имеет вид: # MONITOR имя_ИБП@хост номер_ввода юзер пароль тип_юзера # # номер_ввода в данном случае означает номер электрического ввода # на бытовых ИБП он только один и соответственно должен принимать значение "1" MONITOR main@localhost 1 upsmon m0np4ss master
Закончив настройку перезапустим nut-server и nut-client:
service nut-server restart service nut-client restart
На этом начальная настройка заканчивается и теперь можно запустить графическую утилиту мониторинга из меню: «Интернет» -> «NUT Monitor»:
С помощью этого приложения можно видеть загрузку ИБП, заряд батареи, температуру на ИБП и ряд других параметров. Кроме того приложение добавляет в системный лоток иконку, показывающую текущий статус ИБП и отображающую во всплывающей подсказке краткую сводку:
На этом пока всё. Приятной работы и стабильного электропитания!:)