Подключение Ippon Back Basic 650 в Linux позволяет автоматически управлять питанием сервера при сбоях электроснабжения. В этом руководстве мы рассмотрим установку и настройку NUT (Network UPS Tools) для мониторинга состояния ИБП, корректного завершения работы системы и защиты данных от потери при отключении электричества.
В данном гайде будем подключать Ippon Back Basic 650 на Debian 12. Если у вас еще не установлен сервер Debian 12, то рекомендую воспользоваться статьей на сайте Установка Debian 12 в качестве сервера.
Установка NUT
# apt update
# apt install nut
Подключите ИБП и проверьте, как он определяется
Подключите ИБП через USB и выполните:
# lsusb
Должно выдать примерно как на картинке ниже:

В нашем случае ИБП определяется как устройство 0665:5161 Cypress Semiconductor USB to Serial. Это означает, что он использует USB-to-Serial чип, который совместим с драйвером blazer_usb в NUT.
Настройка драйвера на подключение Ippon к серверу
Откройте файл ups.conf:
# nano /etc/nut/ups.conf
Добавьте в самом конце:
[ippon]
driver = blazer_usb
port = auto
desc = "Ippon Back Basic 650"
vendorid = 0665
productid = 5161
Сохраняем изменения и выходим из nano.
Настройте режим работы NUT
Откройте файл nut.conf:
# nano /etc/nut/nut.conf
Измените параметр MODE на:
MODE=standalone
Сохраняем изменение и выходим из nano.
Настройте доступ к ИБП
Редактируем файл upsd.conf:
# nano /etc/nut/upsd.conf
Добавляем в самый низ:
LISTEN 127.0.0.1 3493
Сохраняем изменения и выходим из nano.
Теперь создаем пользователя в upsd.users:
# nano /etc/nut/upsd.users
Добавьте в конце файла:
[admin]
password = superpassword
actions = SET
instcmds = ALL
upsmon master
Внимание!
Замените superpassword на ваш пароль.
Сохраняем изменения и выходим из nano.
Настроим upsmon для автоматического выключения
Открываем upsmon.conf:
# nano /etc/nut/upsmon.conf
Добавляем в самом конце файла строки:
MONITOR ippon@localhost 1 admin superpassword master
NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC
NOTIFYCMD /sbin/upssched
Внимание!
Замените superpassword на ваш пароль.
Проверьте, что раскомментирован параметр:
POWERDOWNFLAG /etc/killpower
Запускаем NUT и проверяем работу
Перезапускаем службы:
# systemctl restart nut-server nut-monitor
Проверяем статус:
# systemctl status nut-server nut-monitor
Должно получиться примерно как на картинке ниже:

Если всё хорошо, проверяем данные ИБП:
# upsc ippon@localhost
Вы должны увидеть информацию примерно как на картинке ниже:

При такой настройке, если батарея разрядится ниже критического уровня, сервер выполнит shutdown. Если вас это устраивает, можете заканчивать настройку.
Если вам необходимо, чтобы сервер завершал работу через определенное время, после перехода на работу от батареи, тогда продолжайте настройку далее.
Настройка ИБП на отключение по расписанию
Открываем upssched.conf:
# nano /etc/nut/upssched.conf
Далее меняем или добавляем следующие параметры:
CMDSCRIPT /usr/local/bin/upssched-cmd
PIPEFN /run/nut/upssched/upssched.pipe
LOCKFN /run/nut/upssched/upssched.lock
AT ONBATT * START-TIMER shutdown_timer 300
AT ONLINE * CANCEL-TIMER shutdown_timer
Сохраняем изменения и выходим из nano.
Пояснения по параметрам выше.
- CMDSCRIPT /usr/local/bin/upssched-cmd
🔹 Указывает путь к скрипту, который будет выполняться при срабатывании таймеров. В данном случае, это /usr/local/bin/upssched-cmd, который отвечает за выключение сервера и отправку команды на отключение ИБП.- PIPEFN /run/nut/upssched/upssched.pipe
🔹 Файл канала (FIFO), через который процессы upssched и upsmon взаимодействуют друг с другом.- LOCKFN /run/nut/upssched/upssched.lock
🔹 Файл блокировки, предотвращающий одновременный запуск нескольких экземпляров upssched.- AT ONBATT * START-TIMER shutdown_timer 300
🔹 При переходе ИБП на батарею (ONBATT) запускает таймер shutdown_timer на 300 секунд (5 минут).
🔹 Если питание не восстановится в течение этого времени, upssched вызовет /usr/local/bin/upssched-cmd shutdown_timer и выполнит выключение сервера.- AT ONLINE * CANCEL-TIMER shutdown_timer
🔹 Если питание восстановилось (ONLINE) до истечения 300 секунд, таймер shutdown_timer отменяется.
Создайте необходимые директории для PIPEFN и LOCKFN:
# mkdir -p /run/nut/upssched
Установите правильные права доступа:
# chown nut:nut /run/nut/upssched
# chmod 750 /run/nut/upssched
Так как в нашей конфигурации используется директория /run, которая является временной (tmpfs) и очищается при перезагрузке, то для того чтобы папка upssched в /run/nut у нас не пропадала после перезагрузки, мы будем автоматически ее создавать при загрузке системы. Для этого воспользуемся конфигурацией systemd-tmpfiles.
Создайте файл конфигурации для tmpfiles.d:
# nano /etc/tmpfiles.d/nut-upssched.conf
Добавьте в него следующую строку:
d /run/nut/upssched 0750 nut nut -
Сохраняем изменения и выходим из nano.
Теперь создадим скрипт, который у нас будет вызываться по окончанию таймера при переходе ИБП на питание от батареи:
# nano /usr/local/bin/upssched-cmd
И добавьте в него следующее содержимое:
#!/bin/bash
case "$1" in
shutdown_timer)
logger -t upssched-cmd "UPS on battery for 300 sec, initiating shutdown sequence."
# Сначала запускаем выключение сервера:
sudo /sbin/shutdown -h now
# Подождём немного, чтобы сервер начал завершение работы
sleep 10
# После этого отправляем команду на отключение UPS
sudo upscmd -u admin -p superpassword ippon shutdown.return
;;
*)
logger -t upssched-cmd "Unrecognized timer command: $1"
;;
esac
Внимание!
Замените superpassword на ваш пароль.
Сохраняем изменения и выходим из nano.
Установите права на файл и сделайте его исполняемым:
# chown root:nut /usr/local/bin/upssched-cmd
# chmod +x /usr/local/bin/upssched-cmd
И разрешите пользователю nut перезапускать сервер:
# nano /etc/sudoers.d/nut
Добавьте строку:
nut ALL=(ALL) NOPASSWD: /sbin/shutdown
Сохраняем изменения и выходим из nano.
Перезапускаем службы:
# systemctl restart nut-server nut-monitor
Заключение
Настройка NUT для управления питанием сервера через ИБП Ippon Back Basic 650 на Debian 12 позволяет значительно повысить отказоустойчивость системы и предотвратить потерю данных при отключении электричества. В этом руководстве мы подробно рассмотрели процесс установки и конфигурации сервиса, начиная от определения устройства и настройки драйвера до автоматического завершения работы системы при критическом разряде батареи.
Дополнительно мы настроили отложенное отключение сервера через 5 минут после перехода ИБП на батарею, что позволяет избежать внезапного выключения при кратковременных перебоях электроэнергии. Также учтены нюансы работы /run
в Debian 12, обеспечивая автоматическое создание нужных директорий при загрузке системы.
После завершения всех настроек сервер теперь автоматически завершает работу перед разрядом батареи, а ИБП отключается и включается только при восстановлении электропитания. Остается лишь настроить в BIOS автоматическое включение сервера при подаче питания, чтобы система могла восстанавливаться без вмешательства администратора.
Подключение Ippon Back Basic 650 в Linux теперь полностью настроено, что позволяет эффективно управлять питанием сервера и минимизировать риски, связанные с отключением электроэнергии.
Помогла статья? Подписывайся на Telegram канал автора.
Анонсы всех статей, много другой полезной и интересной информации, которая не попадает на сайт.
Если у вас имеются вопросы, задавайте их в комментариях.