APC

Обновлено 4 июля 2019

APC

Введение

American Power Conversion (APC) - компания, занимающаяся производством источников бесперебойного питания (ИБП). В настоящее время продукция APC является одной из самых распространённых в мире. Многим пользователям, работающим с ИБП APC, может понадобиться обеспечение корректного завершения работы компьютеров при отключении электричества с последующим разрядом батареи ИБП, а также их включения при подаче питания.

Установка

Установите пакет sys-power/apcupsd:

emerge apcupsd

Настройка работы машины с ИБП APC

Подключите ИБП к компьютеру с помощью кабеля USB.

Выполните следующие настройки:

/etc/apcupsd/apcupsd.conf

# If during a power failure, the remaining battery percentage
# (as reported by the UPS) is below or equal to BATTERYLEVEL, 
# apcupsd will initiate a system shutdown.
BATTERYLEVEL 10 

# If KILLDELAY is non-zero, apcupsd will continue running after a
# shutdown has been requested, and after the specified time in
# seconds attempt to kill the power. This is for use on systems
# where apcupsd cannot regain control after a shutdown.
# KILLDELAY <seconds>  0 disables
KILLDELAY 60

где:

  • BATTERYLEVEL - уровень заряда батареи (в процентах), при котором инициируется выключение компьютера
  • KILLDELAY задаётся в секундах. Через указанное время (в данной конфигурации 60 сек.) после отправки сигнала на выключение компьютера начнёт выключаться ИБП. Данный параметр необходим, чтобы, во-первых, сохранить какой-то заряд батареи, во-вторых, чтобы при подаче питания автоматически включился компьютер.

Важно

Убедитесь, что в BIOS установлено автоматическое включение компьютера при подаче питания.

При данной конфигурации ИБП будет инициировать выключение компьютера, подключённого через USB, когда заряд батареи составит 10%.

Параметры BATTERYLEVEL и MINUTES работают одновременно. Это означает, что сигнал выключения компьютера будет отправлен при достижении уровня заряда батареи, удовлетворяющего любому из условий, заданных в этих параметрах.

Запустите службу apcupsd и добавьте её в автозагрузку:

/etc/init.d/apcupsd restart

rc-config add apcupsd

Для получения информации о статусе ИБП используется следующая команда:

apcacess status
APC      : 001,043,1003
DATE     : 2018-04-28 17:07:30 +0300  
HOSTNAME : pc284
VERSION  : 3.14.14 (31 May 2016) gentoo
UPSNAME  : pc284
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2018-04-28 16:48:42 +0300  
MODEL    : Smart-UPS 750 
STATUS   : ONLINE 
LINEV    : 223.2 Volts
LOADPCT  : 9.1 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 106.0 Minutes
MBATTCHG : 0 Percent
MINTIMEL : 0 Minutes
MAXTIME  : 40 Seconds
OUTPUTV  : 223.2 Volts
SENSE    : High
DWAKE    : -1 Seconds
DSHUTD   : 90 Seconds
LOTRANS  : 208.0 Volts
HITRANS  : 253.0 Volts
RETPCT   : 0.0 Percent
ITEMP    : 34.6 C
ALARMDEL : 30 Seconds
BATTV    : 27.3 Volts
LINEFREQ : 50.0 Hz
LASTXFER : No transfers since turnon
NUMXFERS : 0
TONBATT  : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
SELFTEST : NO
STESTI   : 14 days
STATFLAG : 0x05000008
MANDATE  : 2007-07-20
SERIALNO : AS0729143376
BATTDATE : 2007-07-20
NOMOUTV  : 230 Volts
NOMBATTV : 24.0 Volts
FIRMWARE : 651.13.I USB FW:7.3
END APC  : 2018-04-28 17:07:34 +0300

Настройка работы нескольких машин с ИБП APC

Работа нескольких машин, подключённых к ИБП, осуществляется посредством сети. В данном случае один компьютер, подключённый к ИБП через USB, выступает в роли сервера. Когда на сервер приходит сигнал выключения, он инициирует завершение работы клиентов.

Выполните следующие настройки на сервере:

/etc/apcupsd/apcupsd.conf

# NISIP <dotted notation ip address>
#  IP address on which NIS server will listen for incoming connections.
#  This is useful if your server is multi-homed (has more than one
#  network interface and IP address). Default value is 0.0.0.0 which
#  means any incoming request will be serviced. Alternatively, you can
#  configure this setting to any specific IP address of your server and 
#  NIS will listen for connections only on that interface. Use the
#  loopback address (127.0.0.1) to accept connections only from the
#  local machine.
NISIP 192.168.0.1 

Укажите в параметре NISIP IP-адрес сервера. В нашем примере это 192.168.0.1.

Перезапустите службу apcupsd для вступления изменений в силу:

/etc/init.d/apcupsd restart

Выполните на клиенте следующие настройки:

/etc/apcupsd/apcupsd.conf

# UPSCABLE <cable>
#   Defines the type of cable connecting the UPS to your computer.
#
#   Possible generic choices for <cable> are:
#     simple, smart, ether, usb
#
#   Or a specific cable model number may be used:
#     940-0119A, 940-0127A, 940-0128A, 940-0020B,
#     940-0020C, 940-0023A, 940-0024B, 940-0024C,
#     940-1524C, 940-0024G, 940-0095A, 940-0095B,
#     940-0095C, M-04-02-2000
#
UPSCABLE ether

# To get apcupsd to work, in addition to defining the cable
# above, you must also define a UPSTYPE, which corresponds to
# the type of UPS you have (see the Description for more details).
# You must also specify a DEVICE, sometimes referred to as a port.
# For USB UPSes, please leave the DEVICE directive blank. For
# other UPS types, you must specify an appropriate port or address.
UPSTYPE net
DEVICE 192.168.0.1:3551
  • В параметре UPSCABLE укажите ether для подключения через Ethernet.
  • В параметре UPSTYPE укажите net для подключения по сети.
  • В параметре DEVICE укажите IP-адрес сервера с портом 3551. В данном примере - 192.168.0.1:3551.

Важно

Убедитесь, что на сервере открыт порт 3551.

Запустите службу apcupsd и добавьте её в автозагрузку:

/etc/init.d/apcupsd restart

rc-config add apcupsd