sa1000 (sa1000) wrote,
sa1000
sa1000

Category:

APCUPSD

НАЗНАЧЕНИЕ

В комплект поставки UPS фирмы APC входит система управления PowerChute, которая состоит из трёх компонент: агенты (устанавливаются на подключённые к ИБП компьютеры, управляют выключением клиентских компьютеров), сервер (устанавливается куда попало, объединяет информацию от агентов для доступа с консоли), консоль управления (устанавливается на компьютер администратора, графический интерфейс управления). Интерфейс между агентами и сервером защищён именем и паролем (имеется возможность автоматического обнаружения агентов в локальном сегменте). Под Linux имеется только агент (RHEL и пр.). Большую часть пакета занимает JRE. Качество этого продукта ниже самых низких оценок. Документация не представляет из себя ничего полезного и не вызывает доверия к программе.

К счастью есть альтернатива — демон APCUPSD (http://www.apcupsd.org/ ).

Пакет apcupsd позволяет контролировать состояние UPS фирмы APC и вовремя завершать работу ОС. Поддерживает не только простые (dumb) UPS компании APC, но и более "разумные" (smart), подключаемые как по фирменному "последовательному" кабелю, так и USB и Ethernet модели. Поддерживаются модели с SNMP управлением (хотя в этом случае вы можете управлять устройством напрямую). Кроме простейшей конфигурации (один UPS - один компьютер) поддерживаются конфигурации с удаленным управлением (компьютер питается от UPS, но управляет данным UPS другой компьютер), питание нескольких компьютеров от одного UPS (один из компьютеров управляет UPS по кабелю или SNMP, остальные опрашивают состояние UPS у него) и управление несколькими UPS с одного компьютера (все питаемые от данных UPS компьютеры опрашивают данный компьютер). Можно подключать UPS к компьютерам под управлением Linux (Fedora, Debian, Slackware), FreeBSD, NetBSD, OpenBSD, HP/UX, Solaris и MS Windows под Cygwin (последовательный порт, USB, SNMP).

Разработчики предоставляют готовые rpm-пакеты для Red Hat (при обновлении рекомендуется удалить и поставить заново, иначе могут быть проблемы со скриптом halt) и пакеты для MS Windows XP. При установке модифицируется /etc/rc.d/init.d/halt (вставляется apcupsd --killpower для отключения UPS, иначе при "досрочном" появлении питания компьютер не загрузится), его надо проверить (и удалить, если компьютер не управляет питающий UPS). Сборка из исходных текстов также проста и стандартна (распаковываем; ./configure; make; make install), только надо не забыть остановить и удалить предыдущую версию.

ПРИНЦИП РАБОТЫ

Опрос клиентскими компьютерами сервера, к которому подключён UPS, осуществляется по протоколу NIS (не путать со стандартным NIS!), порт по умолчанию 3551/tcp. Сервер должен иметь включённым параметр NETSERVER, для клиентов задаётся UPSCABLE равным ether, UPSTYPE - net. Порт на сервере задаётся параметром NISPORT, прослушиваемый IP адрес - NISIP. Не надо забывать открыть сетевой экран (никакой защиты нет, а apcupsd работает от root-а), есть поддержка tcpwrapper. Адрес и порт сервера задаётся на клиенте параметром DEVICE, интервал опроса - NETTIME (не устанавливать более 30 секунд!). Рекомендуется устанавливать параметры BATTERYLEVEL, MINUTES и TIMEOUT на клиенте так, чтобы клиент выключался раньше сервера. Клиент, в свою очередь, может являться сервером для других компьютеров.

Поддерживается протокол PowerChute Network Shutdown для включения в сеть мониторинга фирмы APC (модули AP9617) - драйвер PCNET.

Имеется также режим Master/Slave, который признан устаревшим.

Журнал событий записывается в файл /var/log/apcupsd.events (имя файла задаётся параметром EVENTSFILE), а текущее состояние ежеминутно записывается в /var/log/apcupsd.status (имя файла задаётся параметром STATFILE, интервал в минутах - параметром STATTIME).

Информация о событиях также записывается в syslog и выводится с помощью wall (тексты сообщений для wall и syslog не совпадают!). Отладочная информация (необходимо явно включить при сборке) выдается в syslog на уровне серьёзности DEBUG; данные о напряжении, температуре и т.д. (только для Smart и выше) в кратком виде - на уровне INFO; подробное текущее состояние - NOTICE; события - на уровнях WARNING (запуск и останов), ERR (потеря связи с UPS), CRIT (переход на питание от батарей) и ALERT (выключение компьютера). Источник сообщения для syslog - DAEMON, задается параметром FACILITY.

При каждом событии вызывается скрипт /etc/apcupsd/apccontrol, которому первым параметром передаётся имя события; вторым параметром - имя UPS (задаётся в apcupsd.conf); третьим параметром - если данный компьютер управляет UPS, то 1, иначе 0; четвёртым параметром - 0 (в будущем предполагается передавать питается ли компьютер от этого UPS). Если в директорию /etc/apcupsd/ положить скрипт (или программу) с именем, совпадающим с именем события, то он будет запущен на исполнение перед действием по умолчанию (необходимы права на исполнение). Скрипту (программе) передаются те же параметры, что и apccontrol, кроме имени события. Если скрипт возвращает 99, то действие по умолчанию не производится. Скрипт вызывается до того, как состояние будет доступно из файла status или через NIS сервер.

Имена событий:

  • annoyme (запланировано отключение и истёк интервал перед предупреждением (ANNOYME)
  • changeme (UPS работает от сети, но батарея не работает и её надо заменить)
  • commfailure (потеряно управляющее соединение с UPS)
  • commok (восстановлено управляющее соединение с UPS)
  • doreboot (устарело)
  • doshutdown (UPS работает от батареи и пора отключаться)
  • emergency (немедленно выключить компьютер, т.к. UPS неисправен)
  • failing (UPS работает от батареи и батарея заканчивается)
  • loadlimit (UPS работает от батареи и заряд батареи упал ниже заданного)
  • mainsback (UPS перешёл на работу от сети)
  • onbattery (UPS перешёл на работу от батареи, задержка задаётся ONBATTERYDELAY)
  • offbattery (UPS вернулся от работы от батареи)
  • powerout (пропало питание в сети или самотестирование)
  • remotedown (UPS работает на батарее и с ним пропала связь, например, выключился управляющий компьютер)
  • restartme(устарело)
  • runlimit (UPS работает от батареи и осталось меньше времени, чем указано в MINUTES)
  • timeout (UPS работает от батареи дольше, чем указано в TIMEOUT)
  • startselftest (UPS начал самотестирование)
  • endselftest (UPS завершил самотестирование)
  • battdetach (батарея отсоединена)
  • battattach (батарея подключена обратно)
  • mastertimeout (?)
  • masterconnect (?)

Типичная последовательность событий на управляющем компьютере при кратковременном пропадании электричества в сети:

powerout
onbattery (через 5 секунд)
...
offbattery
mainsback

Последовательность событий на управляющем компьютере при длительном пропадании электричества в сети:

powerout
onbattery (через 5 секунд)
failing или timeout или loadlimit или runlimit
doshutdown
создаётся файл /etc/apcupsd/powerfail
/sbin/shutdown -h now # apcupsd продолжает работать
apcupsd получает сигнал завершить работу от /etc/rc.d/...
выполняется модифицированный /etc/rc.d/init.d/halt
файловые системы переводятся в режим "только чтение"
/etc/apcupsd/apccontrol killpower
apcupsd --killpower # посылает UPS сигнал отключения питания

После установки сложной системы из многих UPS, серверов и клиентов рекомендуется проводить учения, чтобы убедиться в правильности отключения компьютеров:

  1. убедиться в наличии процессов apcupsd (ps)
  2. наличие записей в журнале (apcupsd и apcserver)
  3. service apcupsd status
  4. наличие реакции на разрыв управляющего соединения между UPS и сервером (и какова реакция клиентов)
  5. наличие реакции на временное отключение питания
  6. правильное отключение систем по исчерпанию батареи (UPS также должен выключиться)

Утилита "apcaccess status" позволяет посмотреть текущее состояние UPS (содержимое apcupsd.status). Имя и порт NIS-сервера задаётся вторым параметром. Имеется (но не работает) возможность посмотреть значения параметров в eeprom: "apcaccess eeprom".

Утилита apctest позволяет (предварительно остановить apcupsd) запустить самотестирование, посмотреть и изменить дату батареи, посмотреть дату изготовления. Для UPS с последовательным кабелем можно программировать eeprom и войти в терминальный режим.

Утилита powerflute выдаёт красивую картинку (ncurses) о текущем состоянии UPS (которого из них?) и позволяет его выключить.

НАСТРОЙКА

  • проверить, что устройство и кабель поддерживается пакетом apcupsd, и выяснить UPSTYPE (usb при подключении по USB; net для косвенного управления)

  • получить пакет apcupsd для своей версии Linux (powerflute и драйверы usb и net входят в комплект)

  • спланировать подключения и конфигурацию

  • настроить BIOS для включения после появления питания на всех компьютерах

Проверка готовности системы для случая UPS с интерфейсом USB:

# cat /proc/bus/usb/devices

Там должно быть нечто подобное с указанием модели UPS

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=051d ProdID=0002 Rev= 1.00
S: Manufacturer=American Power Conversion
S: Product=Back-UPS 350 FW: 5.2.I USB FW: c1
S: SerialNumber=BB0115017954
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 30mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=hid
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl= 10ms


 

Проверим способность Вашей системы отключать питание:

# shutdown -h now


 

Если что не работает, проверяем параметры ядра.


ПАРАМЕТРЫ ЯДРА

При самостоятельном конкурировании ядра для корректного управления питанием компьютера должны быть включены следующие опции:

Power management options (ACPI, APM) --->
[*] Power Management support
[ ] Software Suspend (EXPERIMENTAL)
[ ] Suspend-to-Disk Support
APM (Advanced Power Management) BIOS Support --->
<M> APM (Advanced Power Management) BIOS support
[*] Ignore USER SUSPEND (NEW)
[ ] Enable PM at boot time (NEW)
[ ] Make CPU Idle calls when idle (NEW)
[ ] Enable console blanking using APM (NEW)
[ ] RTC stores time in GMT (NEW)
[*] Allow interrupts during APM BIOS calls (NEW)
[*] Use real mode APM BIOS call to power off (NEW)


Power management options (ACPI, APM) --->
[*] Power Management support
[ ] Software Suspend (EXPERIMENTAL)
[ ] Suspend-to-Disk Support
ACPI (Advanced Configuration and Power Interface) Support --->
[*] ACPI Support
[ ] Sleep States (EXPERIMENTAL)
<*> AC Adapter
<*> Battery
<*> Button
< > Fan
<*> Processor
< > Thermal Zone
< > ASUS/Medion Laptop Extras
< > Toshiba Laptop Extras
[ ] Debug Statements
[ ] Power Management Timer Support


 

Если Вы используете USB интерфейс для подключения UPS, то проверьте и эту секцию конфигурации на наличие минимального набора опций:


 

Device Drivers --->
USB support --->
<*> Support for Host-side USB
[ ] USB verbose debug messages
--- Miscellaneous USB options
[*] USB device filesystem
[ ] Enforce USB bandwidth allocation (EXPERIMENTAL)
[ ] Dynamic USB minor allocation (EXPERIMENTAL)
--- USB Host Controller Drivers
< > EHCI HCD (USB 2.0) support
<*> OHCI HCD support
< > UHCI HCD (most Intel and VIA) support
--- USB Device Class drivers
< > USB Audio support
< > USB Bluetooth TTY support
< > USB MIDI support
< > USB Modem (CDC ACM) support
< > USB Printer support
< > USB Mass Storage support
--- USB Human Interface Devices (HID)
<*> USB Human Interface Device (full HID) support
[*] HID input layer support
[ ] Force feedback support (EXPERIMENTAL)
[*] /dev/hiddev raw HID device support
< > Aiptek 6000U/8000U tablet support
< > Wacom Intuos/Graphire tablet support
< > KB Gear JamStudio tablet support
< > Griffin PowerMate and Contour Jog support
< > MicroTouch USB Touchscreen Driver
< > eGalax TouchKit USB Touchscreen Driver
< > X-Box gamepad support
< > ATI / X10 USB RF remote control
--- USB Imaging devices
< > USB Mustek MDC800 Digital Camera support (EXPERIMENTAL)
< > Microtek X6USB scanner support
< > HP53xx USB scanner support (EXPERIMENTAL)
--- USB Multimedia devices
< > DABUSB driver
--- Video4Linux support is needed for USB Multimedia device support
--- USB Network adaptors
< > USB CATC NetMate-based Ethernet device support (EXPERIMENTAL)
< > USB KLSI KL5USB101-based ethernet device support
< > USB Pegasus/Pegasus-II based ethernet device support
< > USB RTL8150 based ethernet device support (EXPERIMENTAL)
< > Multi-purpose USB Networking Framework
--- USB port drivers
USB Serial Converter support --->
--- USB Miscellaneous drivers
< > EMI 6|2m USB Audio interface support
< > EMI 2|6 USB Audio interface support
< > Texas Instruments Graph Link USB (aka SilverLink) cable support
< > USB Auerswald ISDN support (EXPERIMENTAL)
< > USB Diamond Rio500 support (EXPERIMENTAL)
< > USB Lego Infrared Tower support (EXPERIMENTAL)
< > USB LCD driver support
< > USB LED driver support
< > Cypress USB thermometer driver support
< > USB PhidgetServo support
< > USB testing driver (DEVELOPMENT)
USB Gadget Support --->

КОНФИГУРАЦИЯ

Основные настройки задаются в файле /etc/apcupsd/apcupsd.conf, каждая строка которого определяет значение одного параметра. Основные параметры:

  • UPSNAME имя которое будет указываться в системном журнале
  • UPSTYPE тип-управляющего-соединения (dumb, apcsmart, net, usb, snmp, test)
  • UPSCABLE тип-кабеля (simple, smart, usb, ether, модель фирменного кабеля)
  • DEVICE имя-устройства (/dev/ttyS0, /dev/hiddev0, 192.168.0.1:3551)
  • LOCKFILE имя-каталога (/var/lock; в этом каталоге будут создаваться блокирующие файлы доступа к последовательным или USB портам)
  • NETSERVER on (включение NIS сервера - см. ниже)
  • NISIP 0.0.0.0 (IP адрес для входящих соединений; можно 127.0.0.1)
  • NISPORT 3551 (входной порт NIS сервера)
  • EVENTSFILE имя-файла (журнал событий для NIS сервера)
  • EVENTSFILEMAX максимальный-размер-в-КБ
  • NETTIME 60 (интервал опроса NIS-сервера клиентом)
  • ONBATTERYDELAY 6
  • BATTERYLEVEL 5 (минимальный уровень зарядки батареи в процентах, после которого начинается выключение)
  • MINUTES 3 (минимальное количество минут, оставшихся до исчерпания батареи, после которого начинается выключение; основывается на мнении UPS)
  • TIMEOUT 0 (если не 0, то выключение начинается после указанного числа секунд работы на батарее без учёта уровня зарядки)
  • ANNOY 60 (интервал между призывами к пользователям прекратить работу)
  • ANNOYDELAY 300 (задержка между переходом на работу от батареи и первым призывом завершать работу)
  • NOLOGON disable (не давать начинать новый сеанс работы при работе от батареи; disable - отключить ограничение; timeout - запрещать новый сеанс по истечении 90%, заданого в TIMEOUT; percent - запрещать новый сеанс по достижению 110% уровня зарядки, заданного BATTERYLEVEL; minutes - запрещать новый сеанс по достижению 110% минут, указанных в MINUTES; always - запрещать сразу)
  • NOLOGINDIR имя-каталога (в этом каталоге создаётся файл nologin - именно наличие этого файла в /etc запрещает новый сеанс в UNIX)
  • KILLDELAY 0
  • SCRIPTDIR /etc/apcupsd
  • PWRFAILDIR имя-каталога (в этом каталоге - /etc/apcupsd - создаётся файл powerfail, как признак сбоя питания, который используется в изменённом скрипте /etc/init.d/halt для выключения UPS после выключения системы)
  • STATTIME 60 (секунд между обновлением файла состояния или записями в syslog)
  • STATFILE имя-файла
  • DATATIME 60 (секунд между обновлением краткого файла данных, см. ниже)
  • LOGSTATS on (выводить подробное состояние через syslog)
  • FACILITY DAEMON (от имени какой службы выводить состояние в syslog)

ПРИМЕРЫ КОНФИГУРАЦИЙ


Back-UPS по последовательному кабелю

Пример для отдельно стоящего Back-UPS, /etc/apcupsd/apcupsd.conf:

UPSNAME собственное-имя-устройства
UPSCABLE 940-0020C
UPSTYPE dumb
DEVICE /dev/ttyS0
TIMEOUT 900
NETSERVER off
EVENTSFILE /var/log/apcupsd.events
UPSCLASS standalone
UPSMODE disable
STATTIME 1
STATFILE /var/log/apcupsd.status

Обеспечиваем автоматический запуск и запускаем в первый раз вручную:

/sbin/chkconfig --add apcupsd
/etc/rc.d/init.d/apcupsd start

Интересная информация из STATFILE для простого (dumb) устройства:

  • UPSNAME - собственное имя устройства
  • STATUS - ONLINE, ONBATT, ...
  • NUMXFERS - количество переходов на питание от батареи с момента запуска apcupsd
  • XONBATT - дата и время последнего перехода на питание от батарей
  • TONBATT - время работы от батарей от начала текущего перехода или 0
  • CUMONBATT - суммарное время работы от батарей с момента запуска apcupsd
  • XOFFBATT - дата и время последнего возврата на питание от сети

Smart-UPS по кабелю USB

После установки необходимо отредактировать /etc/apcupsd/apcupsd.conf

UPSNAME Smart-UPS1
UPSCABLE usb
UPSTYPE usb
DEVICE
ONBATTERYDELAY 6
BATTERYLEVEL 5
MINUTES 3
TIMEOUT 0
ANNOY 0
ANNOYDELAY 60
NOLOGON disable
NETSERVER on
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 100
UPSCLASS standalone
UPSMODE disable
STATTIME 60
STATFILE /var/log/apcupsd.status
LOGSTATS on
DATATIME 60
FACILITY LOCAL7

Обеспечиваем автоматический запуск и запускаем в первый раз вручную:

service apcupsd start


 

Интересная информация из STATFILE для "smart" устройства:


UPSNAME - собственное имя устройства.
MODEL (Smart-UPS 1500 RM)
STATUS - ONLINE, ONBATT, ...
LINEV - входное напряжение
LOADPCT - уровень загрузки (26.6%)
BCHARGE - уровень зарядки аккумуляторов
TIMELEFT - расчётное время работы от аккумуляторов
OUTPUTV - выходное напряжение
LOTRANS - нижний уровень перехода на аккумуляторы (208.0)
HITRANS - верхний уровень перехода на аккумуляторы (253.0)
ITEMP - температура (32.8 C Internal)
BATTV - напряжение аккумулятора (27.4)
LINEFREQ
NUMXFERS - количество переходов на питание от батареи с момента запуска apcupsd
XONBATT - дата и время последнего перехода на питание от батарей
TONBATT - время работы от батарей от начала текущего перехода или 0
CUMONBATT - суммарное время работы от батарей с момента запуска apcupsd
XOFFBATT - дата и время последнего возврата на питание от сети
SERIALNO
BATTDATE - дата замены аккумулятора (необходимо вносить вручную)
FIRMWARE (17.3.I USB FW:1.5)


НЕСКОЛЬКО КОМПЬЮТЕРОВ

  • отредактировать /etc/apcupsd/apcupsd.conf на управляющем компьютере:

UPSNAME собственное-имя-устройства
UPSCABLE usb
UPSTYPE usb
DEVICE
ONBATTERYDELAY 6
BATTERYLEVEL 5
MINUTES 3
TIMEOUT 0
ANNOY 0
ANNOYDELAY 60
NOLOGON disable
NETSERVER on
NISIP свой-IP-адрес
NISPORT 3551
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 100
UPSCLASS standalone
UPSMODE disable
STATTIME 60
STATFILE /var/log/apcupsd.status
LOGSTATS on
DATATIME 60
FACILITY LOCAL7

  • Обеспечиваем автоматический запуск (chkconfig --level 2345 apcupsd on) и запускаем в первый раз вручную:

service apcupsd start
  • Проверяем наличие процесса и записи в системном журнале и в /var/log/apcupsd.status

  • Разрешаем подключение в сетевом экране и проверяем работу apcupsd NIS-сервера:

service apcupsd status
  • Устанавливаем пакет apcupsd на управляемые компьютеры. В Red Hat при установке правится /etc/rc.d/init.d/halt.

/etc/apcupsd/apcupsd.conf на управляемом компьютерах:

UPSNAME собственное-имя-устройства
UPSCABLE ether
UPSTYPE net
DEVICE адрес-сервера:порт
ONBATTERYDELAY 6
# больше, чем на управляющем
BATTERYLEVEL 6
# больше, чем на управляющем
MINUTES 4
TIMEOUT 0
# если нет пользователей
ANNOY 0
ANNOYDELAY 60
NOLOGON disable
NETSERVER off
NISIP 127.0.0.1
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 100
NETTIME 10
UPSCLASS standalone
UPSMODE disable
STATTIME 60
STATFILE /var/log/apcupsd.status
LOGSTATS on
DATATIME 60
FACILITY LOCAL7
  • Обеспечиваем автозапуск и стартуем службу:

chkconfig --level 2345 apcupsd on
service apcupsd start

  • Разрешаем подключение в сетевом экране

  • Проверяем наличие процесса и записи в системном журнале и в /var/log/apcupsd.status

  • учения


КЛИЕНТЫ ПОД MS WINDOWS

  • Устанавливаем winapcupsd:


 

1. запуск установщика под администратором

2. согласие с лицензией

3. устанавливать только сервис (отменить установку драйвера USB и документации)

4. отредактировать файл настройки C:\apcupsd\etc\apcupsd\apcupsd.conf

UPSNAME собственное-имя-устройства
UPSCABLE ether
UPSTYPE net
DEVICE адрес-сервера:порт
ONBATTERYDELAY 6
# больше, чем на управляющем
BATTERYLEVEL 6
# больше, чем на управляющем
MINUTES 4
TIMEOUT 0
# если нет пользователей
ANNOY 0
ANNOYDELAY 60
NOLOGON disable
NETSERVER off
NISIP 127.0.0.1
EVENTSFILE C:\apcupsd\etc\apcupsd\apcupsd.events
EVENTSFILEMAX 100
NETTIME 10
UPSCLASS standalone
UPSMODE disable
STATTIME 60
STATFILE C:\apcupsd\etc\apcupsd\apcupsd.status
LOGSTATS off
DATATIME 60
FACILITY LOCAL7

5. не забыть сохранить файл

6. только теперь можно нажать кнопку "Finish", при этом apcupsd запускается как служба (system service); в дальнейшем она будет запускаться автоматически при загрузке ОС

Служба должна иметь статус запуска "Automatic", работать с правами "System Account" и д.б. установлено "Allow Service to Interact with Desktop".

В трее появляется иконка (только на консоли), с помощью которой можно определить текущее состояние и вывести окно состояния и журнала событий. Предупреждения реализованы с помощью вспомогательной программы c:\apcupsd\bin\popup. Посылка e-mail - с помощью c:\apcupsd\bin\smtp.

Перед установкой новой версии необходимо остановить службу и удалить предыдущую версию.

Вместо скрипта apccontrol используется c:\apcupsd\etc\apcupsd\apccontrol.bat. Также в c:\apcupsd\bin устанавливаются утилиты apctest, apcaccess, popup (выдача сообщений на экран - совместно с background), shutdown, email (для оправки почту по MAPI) и smtp. Для отправки почтовых сообщений необходимо в apccontrol.bat навставлять строк вида:

type c:\apcupsd\etc\apcupsd\apcupsd.status | \

или

c:\apcupsd\bin\apcaccess status сервер-apcupsd:порт | \

c:\apcupsd\bin\smtp -h имя-SMTP-сервера:25 -f от-кого -s "текст сообщения" кому


 

Ключи apcupsd:

/help
/service (запустить как службу)
/run (просто запустить)
/install (установить как сервис в реестре)
/remove (удалить службу из реестра)
/about
/status
/events
/kill (остановить ранее запущенный процесс)


 


Клиент PowerChute Network Shutdown Driver (PCNET)

При работе такого UPS в сеть передаются сообщения о его состоянии (UDP, port=3052), в случае достижения определенной кондиции источника питания, Ваша система должна принять решение о выключении питания.

Редактировать /etc/apcupsd/apcupsd.conf

UPSCABLE ether
UPSTYPE pcnet
DEVICE 10.6.2.111:admin:15456789012345
LOCKFILE /var/lock
SCRIPTDIR /etc/apcupsd
PWRFAILDIR /etc/apcupsd
NOLOGINDIR /etc
ONBATTERYDELAY 6
BATTERYLEVEL 5
MINUTES 3
TIMEOUT 0
ANNOY 300
ANNOYDELAY 60
NOLOGON disable
KILLDELAY 0
NETSERVER off
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 10
UPSCLASS standalone
UPSMODE disable
STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0


Внимание: - Вашу систему можно остановить командой из сети, примите меры предосторожности.

Для этого варианта пока отладочных инструментов нет.

Для отладки нужно запустить демон можно командой с параметрами:

/sbin/apcupsd -d1000 -b -f /etc/apcupsd/apcupsd.conf -P /var/run/apcupsd.pid

Можно еще добавить опцию «-T», демон будет писать все свои сообщения в файл ./apcupsd.trace .

Проверим что там есть ...

tail -f ./apcupsd.trace


Tags: linux apcupcd
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments