Подключаем бесперебойник (usb) к CentOS (linux)

Итак. Имеем «APC Back-UPS RS 800» и интернет шлюз на «CentOS 6.3 i386». Хотелось бы настроить автоматическое завершение работы интернет шлюза при отключении электричества. APC соединено со шлюзом по USB кабелю. Статья писалась не один день и для её написания использовались операционные системы под настроение, поэтому не стоит обращать внимание на разницу windows и linux окошек.  

Теперь более подробнее. APC подключена к интернет шлюзу при помощи Смотрим, что за система

cat /etc/redhat-release

Устанавливаем утилиту для работы с USB. В этом пакете содержится утилита lsusb, позволяющая просмотреть устройства, подключенные к шине USB.

yum install usbutils

Смотрим что у нас подключено на USB шине

lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 04fc:0c25 Sunplus Technology Co., Ltd SATALink SPIF225A
Bus 003 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply

Нас интересует строчка

Bus 003 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply

Первую часть мы выполнили. APC подключено. Ура товарищи. Идём дальше. Кстати дальнейшая установка подходить только для бесперебойников фирмы APC, для других советую глянуть на сайте www.networkupstools.org. Ну и для windows есть www.apcupsd.com Устанавливаем необходимые пакеты

yum install apcupsd apcupsd-cgi

Пакет apcupcd-cgi нужен для веб интерфейса

На всякий случай копируем конфиг по умолчанию.

cp /etc/apcupsd/apcupsd.conf /etc/apcupsd/apcupsd.conf.default

Редактируем конфиг

vi /etc/apcupsd/apcupsd.conf

содержимое конфига

## apcupsd.conf v1.1
##
UPSNAME APC800
UPSCABLE usb
UPSTYPE usb
DEVICE
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 on
NISIP 127.0.0.1
NISPORT 3551
EVENTSFILEMAX 10
UPSCLASS standalone
UPSMODE disable
STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0

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

ONBATTERYDELAY - уровень заряда батареи меньше которого начнет выключаться

BATTERYLEVEL - оставшееся время работы батареи меньше котрого начнет выключаться

Запускаем сервер

service apcupsd status

Проверяем работу

service apcupsd status

или командой

apcaccess status

еще можно проверить

ps aux | grep apc

Теперь останавливаем службу

service apcupsd stop

и переходим к тестированию

Параметры тестирования и настройки (apctest) 

Вводим в консоли

apctest

Описание пунктов тестирования:

1) Test kill UPS power— тест на отключение. Кабель USB должен быть подключен к ИБП, а силовой кабель переменного тока отключен. Так как этот тет нельзя запускать с компьютера непосредственно подключённого к APC, то выполнение его пропускаем мимо )

2) Perform self-test — Выполнить самодиагностику нажимаем «2» и затем «Enter»

This test instructs the UPS to perform a self-test operation and reports the result when the test completes. Clearing previous self test result...CLEARED Initiating self test...INITIATED Waiting for test to complete...COMPLETED Result of last self test: PASSED

Значение вывода примерно следующее

Очистка предыдущего результата самопроверки ...УДАЛЕНО

Начало самопроверки ... ИНИЦИАЛИЗАЦИЯ

Процесс тестирования ... ЗАВЕРШЕНА

Результат последнего самотестирования: ПРОШЕЛ

3) Read last self-test result - Посмотреть последний результат самотестирования

4) View/Change battery date - посмотреть и установить дату батареи. Пригодится при замене батареи.

5) View manufacturing date - Показать дату производства

6) View/Change alarm behavior - настройка звукового сопровождения (бипера)

Текущее значение тревоги: ОТКЛЮЧЕНО

E — Включение сигнализации

D — Отключение сигнализации

Q — Выйти и оставить без изменений

7) View/Change sensitivity - просмотреть или установить скорость переключения на батарею. Зависит от вашей сети питания. В большинстве случаев подходит MEDIUM

8) View/Change low transfer voltage - посмотреть или установить минимально допустимое напряжение в сети при котором APC переключится на батарею

9) View/Change high transfer voltage - посмотреть или установить максимально допустимое напряжение в сети при котором APC переключится на батарею

10) Perform battery calibration - калибровка батареи. Для того чтобы откалибровать батарею необходимо нагрузить APC. В нашем случае нас попросили создать нагрузку в 10%. Если для вас проблема с нагрузкой, то просто тыкайте в неё настольные лампы, мониторы, да всё подряд...только не переусердствуйте ))))

После того как вы смоли создать нужную нагрузку, снова запускает калибровку.

У меня процесс калибровки длился примерно 35 минут и в конце проверки выдал сообщение о завершении

11) Test alarm - тест пишалки

12) View/Change self-test interval— Так и не понял что за параметр. Но очень похоже на период тестирования.

0 — отключить

1 — при включении питания

2 — 7 дней

3 — 14 дней

Q  - выйти без изменений

Q) Quit — выход из теста

После использования apctest не забываем запустить apcupsd

service apcupsd start

Добавляем apcupsd в автозагрузку

chkconfig --add apcupsd

проверяем

chkconfig --list apcupsd

Возможные ошибки:

1. Не работает команда lsusb

# lsusb -bash: lsusb: команда не найдена

решение:

yum install usbutils
Остались или есть ещё вопросы? Задавайте!
(не забудьте указать ссылку на этот пост)




2 комментария

  1. cat /etc/redhat-release

    что бы не парится в разных ОСах я делаю так:

    cat /etc/*release*

    =)  

    Thumb up 1 Thumb down 0

  2. Андрей Пашин Romania Google Chrome Linux :

    Спасибо большое за этот мануал, все настроил без проблем! *THUMBS UP*

    Thumb up 0 Thumb down 0

Оставить комментарий

Установка, настройка, мониторинг и администрирование linux, unix, windows систем