В этой заметке я расскажу, как подключал вот этого коня Tripp-Lite SMX1500 LCD к серверу под управлением FreeBSD. Подключение информационного кабеля дает множество вкусных плюшек – мониторинг рабочих параметров UPS’а (напряжение в сети, заряд батарей), проведение диагностики/калибровки, а также возможность безаварийного выключения сервера при отсутствии питания в сети и низком заряде батарей (типа, отступать некуда). Раньше обычно UPS подключали по COM-порту, но технологии не стоят на месте, и все потихоньку переходят на USB. Нам будет нужен такой кабель с концами, как на картинке. Как именно подключать, думаю, понятно 🙂
Нам нужно установить из портов утилиту под названием NUT (Network UPS Tools). Вопреки команде whereis nut, она располагается в каталоге /usr/ports/sysutils/nut. Устанавливаем, к примеру так: portmaster sysutils/nut. При конфигурировании не забываем выбрать флаг USB:
Список соответствия различных моделей UPS’ов и драйверов к ним можно найти на одной из страниц сайта проекта – Hardware compatibility list. Опять таки, вопреки здравому смыслу, драйвер для нашего бесперебойника называется не tripplite_usb, а usbhid-ups. Его и нужно прописать в конфиге /usr/local/etc/ups.conf:
[server] driver = usbhid-ups port = "auto"
Для пробного запуска можно использовать следующую команду. Если вывод будет выглядеть примерно так, значит все отлично:
# /usr/local/nut/bin/usbhid-ups -DDDD -a server 0.051181 Checking device (09AE/2009) (/dev/usb//dev/ugen0.2) 0.356574 - VendorID: 09ae 0.356586 - ProductID: 2009 0.356593 - Manufacturer: Tripp Lite 0.356600 - Product: TRIPP LITE UPS 0.356607 - Serial Number: FW-2473 A 0.356614 - Bus: /dev/usb 0.356620 Trying to match device 0.356638 Device matches 0.386577 HID descriptor, method 1: (9 bytes) => 09 21 10 01 00 01 22 cf 01 0.386589 i=0, extra[i]=09, extra[i+1]=21 0.386602 HID descriptor, method 2: (9 bytes) => 09 21 10 01 00 01 22 4e 02 0.386610 Warning: two different HID descriptors retrieved (Reportlen = 463 vs. 590) 0.386616 HID descriptor length 590 1.140619 Report Descriptor size = 590 1.140654 Report Descriptor: (590 bytes) => 05 84 09 04 a1 01 09 24 a1 02 85 28 09 fe . . .
Можно поставить драйвер UPS’а в автозагрузку, добавив следующую строчку в /etc/rc.local:
/usr/local/nut/bin/upsdrvctl start
Скажи-ка, как сей бесперебойник в работе? … жив ли ещё?