Привет, All.
Озадачился подключением домашнего бесперебойника к домашнему серверу. Инелты, вроде, должны уметь опрашиваться через NUT... но, судя по всему, не мой случай. Мой бесперебойник ни за что опрашиваться не хотел.
Нашёл статью
http://yuri-kurenkov.livejournal.com/33756.html и понял, что зачем-то выпилили поддержку бесперебойников серии Intelligent.
Скачал исходники NUT версии 2.7.4, которая устанавливается из пакетов. Думал, что подсуну исходники драйвера fentonups и соберу с инми. Но NUT из исходников не собирается. останавливается с ошибкой
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -c -o nutclient.lo nutclient.cpp
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../include -c nutclient.cpp -o .libs/nutclient.o
../libtool: line 1125: g++: command not found
Makefile:895: ошибка выполнения рецепта для цели «nutclient.lo»
make[1]: *** [nutclient.lo] Ошибка 1
make[1]: выход из каталога «/root/tmp/nut/nut-2.7.4/clients»
Makefile:514: ошибка выполнения рецепта для цели «all-recursive»
make: *** [all-recursive] Ошибка 1
Но я посмотрел, что в директории с драйверами появляется Makefile
ОК.
Скачиваем старую версию NUT, засовываем в каталог drivers файлы fentonups.c и fentonups.h, правим Makefile.am и Makefile.in
Конфигурим NUT
./configure --prefix=/usr --sysconfdir=/etc/nut --localstatedir=/var/run/nut --with-statepath=/var/run/nut
Запускаем make Как писал выше, всё заканчивается ошибкой.
Далее, переходим в каталог drivers, делаем make. Получаем работающий драйвер, подсовываем его в /lib/nut и пробуем со всем этим взлететь...
Оно взлетает и даже что-то там опрашивает. Но это всё не комильфо как-то.
Я программёр ещё тот... Может кто-то поможет получить всё это в каком-то вменяемом виде?
З.Ы. Во вложении исходники драйвера, которые пришлось поправить ввиду переименования функций в новых драйверах, а также изменённые Makefile.