Ошибка USB-подключения Upsmon pro

Обновлено: 02.07.2024

NUT — это система мониторинга источников бесперебойного питания (ИБП), которая позволяет совместно использовать одну (или несколько) систем ИБП между несколькими компьютерами. Он имеет «серверный» компонент, который отслеживает состояние ИБП и уведомляет «клиентский» компонент о низком заряде батареи ИБП. Клиентский компонент может быть запущен на нескольких компьютерах, и каждый из них можно настроить на корректное отключение в случае сбоя питания (до того, как батареи ИБП разрядятся).

Наблюдение за ИБП с прямым локальным подключением

После установки пакета NUT в /etc/nut/ есть шесть примеров файлов конфигурации.
Подключитесь к вашей системе IPFire, используя ssh от имени root.

Драйвер устройства

Идентифицируйте свой ИБП в списке совместимого оборудования NUT.

Затем настройте файл ups.conf. Для ИБП, подключенного напрямую через USB, это должно выглядеть так:

В этом примере [apc-1500] — это имя ИБП, которое будет упоминаться позже. Поэтому лучше всего использовать простой псевдоним.

Описание — это краткое описание, которое можно пропустить.

Дополнительные настройки

Настройте их, если ваш ИБП слишком рано устанавливает флаг низкого заряда батареи или неправильно рассчитывает время работы.

Когда вы указываете это, драйвер игнорирует флаг состояния низкого заряда батареи, о котором сообщает ИБП (некоторые устройства выключаются почти сразу после установки этого флага или сообщают об этом, как только отключается сеть). Вместо этого он будет использовать одно из следующих условий, чтобы определить, когда батарея разряжена:

Чтобы это работало, ваш ИБП должен иметь возможность (достоверно) сообщать о заряде и/или оставшемся времени работы батареи. Используйте с осторожностью!

Необязательно. Установите значение по умолчанию, которое будет использоваться в случае, если ИБП не предоставляет значение, но будет перезаписано, если значение доступно от ИБП:

Вышеприведенное сообщит, что номинальное входное напряжение равно 230, если только ИБП не сообщит нам об обратном.

Необязательно. Установите значение, которое переопределяет любое значение, которое может быть считано с ИБП. Используется для переопределения значений от ИБП, которые явно неверны (например, некоторые устройства сообщают неверные значения напряжения батареи):

Используйте с осторожностью! Это только изменит внешний вид переменной для внешнего мира, внутри ИБП используется исходное значение.

Все остальные поля передаются аппаратно-зависимой части драйвера. См. эти руководства (FIXME добавляет ссылку на документацию NUT здесь) для получения списка того, что разрешено.

Теперь мы должны иметь возможность запускать только модуль устройства NUT и общаться с ИБП
upsdrvctl start
И он должен ответить следующим выводом:

Это говорит нам о том, что NUT удалось запустить драйвер USB и найти ИБП с этим драйвером.

Далее настройте демон, который собирает данные с ИБП и предоставляет их локальному демону монитора и/или демону из сети.

Конфигурация демона

Демон настраивается в upsd.conf

В этом примере 192.168.10.1 — это IP-адрес зеленого интерфейса. Вы можете пропустить номер порта 3493, так как это порт по умолчанию.

Для настройки NUT в автономной конфигурации требуются только эти строки, поскольку IPFire использует только IPv4.

[admin] — это имя пользователя, для остальных, пожалуйста, ознакомьтесь с справочной страницей NUT (FIXME добавьте ссылку на справочную страницу здесь).

Теперь запустите демон NUT:
upsd

и прочитать статус нашего ИБП с помощью этой команды:

мы получим что-то вроде этого (localhost можно пропустить):

Затем настройте демон монитора NUT, который будет контролировать ИБП и при необходимости инициировать отключение системы.

Конфигурация демона мониторинга

Демон-монитор будет настроен с помощью upsmon.conf:

Здесь я объясню только некоторые важные параметры, чтобы получить полную картину. Пожалуйста, взгляните на пример файла конфигурации.

RUN_AS_USER root для большей безопасности вы можете захотеть создать нового пользователя, под которым будет работать NUT, но этот пользователь должен иметь доступ к USB-устройству или устройству SERIAL, доступ только для чтения к файлу конфигурации и т. д.

Или мы запускаем NUT от имени пользователя root, так как NUT в любом случае может завершить работу системы.

Если вы пропустите этот NUT, он будет работать от имени пользователя NOBODY, у которого нет доступа для чтения файла конфигурации (chown доступа к файлу конфигурации открывается позже).

SHUTDOWNCMD "/sbin/shutdown -h +0" эта команда будет запущена, если ИБП отправит флаг BL (батарея разряжена).

NOTIFYCMD /usr/sbin/upssched требуется только в том случае, если вы будете следовать этому руководству до конца и хотите использовать дополнительные уведомления.

POLLFREQ 2, как часто он будет вызывать демон для обновления состояния монитора, для локального устройства достаточно 1-2 секунды, для сети 5-10 должно быть нормально (зависит от того, какой объем сетевого трафика вы хотите иметь).

POLLFREQALERT 1 аналогичен предыдущему, но будет использоваться только в том случае, если монитор знает, что ИБП работает от батареи, поэтому частота опроса может быть ниже, чем наша частота опроса по умолчанию, поэтому мы поддерживаем связь с ИБП (важно для мониторинга сети, вы выиграли не пропустите флаг FSD от мастера).

HOSTSYNC 15 задержка, в течение которой главный компьютер будет ждать, пока все подчиненные узлы не получат обновление (если главная система выключится).

DEADTIME 15 – время, в течение которого монитор сохраняет доступное состояние ИБП, и до того, как он установит его в устаревшее состояние, если монитор потеряет соединение с этим ИБП. (Если ИБП работал от батареи и время простоя истекло [без обновления], монитор немедленно активирует флаг FSD (Force ShutDown) и запустит последовательность выключения)

POWERDOWNFLAG /etc/killpower todo, если он отсутствует, будет отображать сценарий инициализации формы примечания при завершении работы системы

формат сообщений, которые монитор может отправлять на стену, системный журнал или сценарий:

здесь вы выбираете, какие действия предпримет монитор, если заметит событие, если вы следуете этому руководству, вы можете сохранить эти настройки. Для базового мониторинга ИБП просто удалите +EXEC

NOCOMMWARNTIME 600 будет повторять триггер NOCOMM каждые 600 секунд

Теперь система будет выключаться, когда время работы ИБП или заряд батареи ложно ниже нижнего значения!

что в APC по умолчанию очень далеко в будущем, поэтому мы установим для этого параметра более высокое значение, чтобы сохранить некоторые резервы в ИБП

отобразит все доступные переменные, которые вы можете установить в своем ИБП

поэтому мы установим параметр для минимального времени работы на 15 минут и минимального заряда на 40 %

Если ваш ИБП не поддерживает это, вы можете ознакомиться с руководством по изменению значения в разделе драйвера устройства

Конфигурация расписания (необязательно)

модуль расписания NUT представляет собой таймер/триггер, настроенный для событий уведомления NUT

Я также сохранил файл upssched-cmd в папке /etc/nut/, поэтому он будет включен в резервную копию IP-Fire

в этом файле вы только что установили, что таймер будет запускаться при каком событии.

Таким образом, AT ONBATT * START-TIMER onbatt 300 запустит таймер onbatt на 5 минут, если какой-либо ( * ) ИБП вставит событие ONBATT в upssched (которое мы настроили в файле upsmon. conf notifycmd=. и флаги с +EXEC ), если таймер достигнет нуля, он будет выполнен onbatt в bash-скрипте upssched-cmd

AT ONLINE * CANCEL-TIMER onbatt online это отменит таймер onbatt событие ONLINE get paste, если таймер уже истек (или таймер не запущен) команда online в bash-скрипт будет выполнен

ну и ПРИ ВЫКЛЮЧЕНИИ * EXECUTE powerdown будет напрямую ВЫПОЛНЯТЬ скрипт powerdown

Расписание файла CMD

Для этого скрипта вам понадобится аддон sendmail (sendemail) и, возможно, некоторые знания скриптов bash :)

Этот скрипт просто отправит электронное письмо со статусом ИБП в зависимости от события

'&' в команде and команды sendmail обязательна. upssched будет ждать окончания скрипта всего несколько мс, но отправка почты может занять до 3-5 секунд, поэтому upssched попытается нажать триггер снова, а также будет ждать всего несколько мс, пока не получит код возврата, поэтому, в конце концов, он отправит 3-5 электронных писем мгновенно только из одного. С помощью & команда sendmail будет отправлена ​​в фоновый режим, и скрипт немедленно вернет ошибку 0, и все будут счастливы :)

Настройка режима NUT

Наконец мы установим для NUT режим запуска автономный в файле nut.conf:

Права пользователя (chmod)

для всех файлов в /etc/nut/ права пользователя должны быть установлены на

за исключением потребностей upssched-cmd

chmod 0:740 /etc/nut/upssched-cmd

Теперь NUT со всеми подмодулями можно запустить с помощью /etc/init.d/nut start

Сценарии инициализации уже поставляются вместе с пакетом, поэтому для автоматического запуска NUT при загрузке системы не требуется никаких дополнительных действий.

Чтобы увидеть, что NUT работает в сервисном кране WGI, мы перезагружаем систему или используем
/etc/init.d/nut force-reload

только для перезапуска NUT

Подключаемый модуль для скрипта SysInfo

Вот краткий плагин для сценария sysinfo (состояние системы через электронную почту)

для заглавной части:

для части тела:

Мониторинг сетевого ИБП

Драйвер и демон не нужны для мониторинга сетевого ИБП,
вам нужно только изменить запись Monitor в upsmon.conf на

МОНИТОР apc-1500@192.168.1.1 1 подчиненное имя пользователя пароль

Кроме того, вы должны изменить режим в nut.conf на

таким образом NUT запустит только монитор и если вы настроили модуль расписания

Что происходит на Power Events

ИБП переходит на аккумулятор

Батарея ИБП достигает низкого заряда («критический» ИБП), то есть upsc отображает:

ups.status: OB LB

Точное поведение зависит от конкретного устройства и связано с:

Мастер upsmon замечает и устанавливает "FSD" - флаг "принудительного отключения", чтобы сообщить всем подчиненным системам, что он скоро отключит нагрузку.
(Если у вас нет ведомых устройств, перейдите к шагу 6)

подчиненные системы upsmon см. "FSD" и:

Мастер-система upsmon ожидает до HOSTSYNC секунд (обычно 15), пока ведомые устройства не отключатся от upsd. Если какие-либо из них будут подключены по истечении этого времени, upsmon прекратит ожидание и продолжит процесс завершения работы.

Мастер upsmon:

В большинстве систем init берет верх, убивает ваши процессы, синхронизирует и размонтирует некоторые файловые системы, а некоторые перемонтирует только для чтения.

init затем запускает сценарий выключения. Это проверяет флаг POWERDOWNFLAG, находит его и сообщает драйверу(ам) ИБП о необходимости отключить нагрузку.


Почему Linux такой сложный? Начинаю думать, что лучше вернуться к Windows Server для домашнего использования.

Еще одна проблема со связью с ИБП. Мой ИБП — Tripp Lite SMART1300LCD. Он указан в NUT, и когда я настраиваю его в FreeNAS-11.1 и запускаю службу UPS, я получаю это на консоли:


Во время чтения я использовал команду: upsd -DD. Вот результат:

Конечно, я что-то упустил. Я думал, что настроить это будет несложно, но сошел с ума после нескольких часов чтения.

Генералиссимус FreeNAS

Вы указали правильный порт на экране сервисы->ИБП->свойства? Это сообщение вы получите, если у вас неправильный порт. На каждом USB есть индикатор порта. Если вы хотите увидеть, что это такое, отключите и снова подключите ИБП, и вы должны увидеть консольное сообщение в нижнем колонтитуле. (Включите «сообщения нижнего колонтитула» на системном экране).

Последняя версия FreeNAS 9
SuperMicro X11SSM-F
Fractal Design Define R5 в сутенерском белом цвете.
Intel i3-6100 с кулером CM Hyper 212 LED для эстетического эффекта.
32 ГБ ОЗУ Kingston ECC UDIMM
5x4 ТБ WD Red в RAID-Z2
Cyberpower CP685AVR
Твердотельный накопитель Sandisk 64 ГБ для загрузки
Твердотельный накопитель Intel 120 ГБ для тюрем
Если температура ваших дисков превышает 35 C, значит, вы делаете это неправильно.

ЯносСр

Неофит

Спасибо. Я пытался несколько раз. Он подключен к правильному порту, но все еще не работает. Я также поменял USB-кабель на всякий случай. Когда я подключаю ИБП к системе Windows, он работает нормально.

Также см. прикрепленный снимок экрана.

Вложения

Ник2253

Мудрец-неофит

Сталь || TrueNAS Core 12 || HP Z420 | Intel E5-1600 | 8x 4 ГБ ОЗУ | 10x 8 ТБ HGST Ultrastar He | Блок питания HP 600 Вт | 2x Silicon Power 32GB SSD
Железо || FreeNAS 9.10 || Сильверстоун DS380 | ASRock E3C224D2I | Intel G3420 | Crucial 2x 8 ГБ ОЗУ | 6x 4 ТБ Seagate NAS RAIDZ2 | Сильверстоун 300 Вт ST30SF | SanDisk Ultra Fit 16 ГБ
Алюминий || TrueNAS CORE 12 || Супермикро 731i-300B | Супермикро X7SPE-HF-D525 | 2x 4 ГБ ОЗУ SO-DIMM | 4x 4 ТБ Hitachi Ultrastar RAIDZ | Antec Earthpower 500 Вт | 2 диска SanDisk Ultra Fit 32 ГБ

Красный мундир

Преданный мудрец

Я тоже посмотрел на это. В меню конфигурации ИБП выбор, сделанный OP, является «подзаголовком» usbhid-ups. Я думаю, что его выбор, по крайней мере, логичен, основываясь на информации о NUT и графическом интерфейсе пользователя FreeNAS.

2x TrueNAS 12.0-U8, X9SCM-F, Xeon E3-1230 v2, 32 ГБ ECC RAM, 6x4 ТБ WD Red/Red+, RaidZ2, смешанные загрузочные диски SSD/HDD для ноутбуков, Solarflare SFN6122F 10G между коробками.

Генералиссимус FreeNAS

Я не могу представить, почему это не сработает, если он использует ЛЮБЫЕ настройки, использующие usbhid-ups, и у него правильный порт.

Если оба варианта работают, то у меня нет идей, особенно если то, что он говорит, что это работает на его компьютере с Windows, верно.

Последняя версия FreeNAS 9
SuperMicro X11SSM-F
Fractal Design Define R5 в сутенерском белом цвете.
Intel i3-6100 с кулером CM Hyper 212 LED для эстетического эффекта.
32 ГБ ОЗУ Kingston ECC UDIMM
5x4 ТБ WD Red в RAID-Z2
Cyberpower CP685AVR
Твердотельный накопитель Sandisk 64 ГБ для загрузки
Твердотельный накопитель Intel 120 ГБ для тюрем
Если температура ваших дисков превышает 35 C, значит, вы делаете это неправильно.

Большой Дэйв

Энтузиаст FreeNAS

Понятия не имею, имеет ли это значение, но

На этой странице есть ссылка на Online HCL
Последнее обновление: 09.03.2016, 14:27:49 -- Network UPS Tools 2.7.4

После поиска ЭТОЙ версии (2.7.4), которая была проверена в самом низу веб-страницы, аппаратное обеспечение OP (SMART1300LCD), похоже, отсутствует в этом документе.

Со всем уважением предлагаю попробовать другой USB-порт на сервере FreeNAS
и/или попробовать конфигурацию последовательного порта. Удачи

Пожалуйста, имейте в виду, что статистика подтверждает, что большинство проблем
связаны с аппаратным обеспечением, поэтому в тело ваших сообщений
включайте вся информация о вашем оборудовании (включая версию ОС).
Это поможет участникам-добровольцам дать своевременные ответы.
В некоторых случаях ответы будут приходить в виде ссылок, особенно,
если ваш вопрос уже задавали и на него уже много раз отвечали.
Если вы решите срезать углы и проигнорировать запрошенную информацию,
ваше сообщение может быть проигнорировано. Пожалуйста, уважайте волонтеров форума за
время и усилия, которые они так щедро предоставляют бесплатно!

Красный мундир

Преданный мудрец

Да, я тоже это видел. Поэтому я обратился к руководству пользователя для SMART 1300LCD и обнаружил, что это общее руководство также и для SMART 1500LCD, без каких-либо различий в работе, поэтому я не придал значения тому, что оно не было в списке NUT.

2x TrueNAS 12.0-U8, X9SCM-F, Xeon E3-1230 v2, 32 ГБ ECC RAM, 6x4 ТБ WD Red/Red+, RaidZ2, смешанные загрузочные диски SSD/HDD для ноутбуков, Solarflare SFN6122F 10G между коробками.

Красный мундир

Преданный мудрец

2x TrueNAS 12.0-U8, X9SCM-F, Xeon E3-1230 v2, 32 ГБ ECC RAM, 6x4 ТБ WD Red/Red+, RaidZ2, смешанные загрузочные диски SSD/HDD для ноутбуков, Solarflare SFN6122F 10G между коробками.

Генералиссимус FreeNAS

Тогда сделай это.

Попробуйте все адреса USB-портов в конфигурации служб ИБП/NUT. Посмотрите, работает ли один из них.

Последняя версия FreeNAS 9
SuperMicro X11SSM-F
Fractal Design Define R5 в сутенерском белом цвете.
Intel i3-6100 с кулером CM Hyper 212 LED для эстетического эффекта.
32 ГБ ОЗУ Kingston ECC UDIMM
5x4 ТБ WD Red в RAID-Z2
Cyberpower CP685AVR
Твердотельный накопитель Sandisk 64 ГБ для загрузки
Твердотельный накопитель Intel 120 ГБ для тюрем
Если температура ваших дисков превышает 35 C, значит, вы делаете это неправильно.

Эриклоу

Не очень-пассивный-но-агрессивный

Основное: FreeNAS 11.2
Supermicro X11SSM -F с Intel Core i3-6300 и 1 * 16 ГБ Samsung ECC DDR4 2133 МГц
6 * WD30EFRX WD Red 3 ТБ в RAIDZ2 и 1 * 120 ГБ SanDisk SSD (загрузочный)
Sharkoon T9 Value с 2 * Icy Dock FatCage MB153SP-B отсеками для дисков 3-в-2
Seasonic X-650 APC Back-UPS Pro 900

Резервное копирование: FreeNAS 11.2
Supermicro X10SLM+-F с Intel Core i3-4330 и 2*8 ГБ Crucial ECC DDR3 1600 МГц
6 * WD30EFRX WD Red 3 ТБ в RAIDZ2 и 1 * Toshiba/OCZ TR200 (загрузочный )
LSI SAS2008 HBA
Sharkoon T9 Value с 2 * Icy Dock FatCage MB153SP-B 3-в-2 корзины для дисков
Seasonic X-650

ЯносСр

Неофит

Сладкий и низкий

Сладкий НАСт

Это правильно при использовании USB-устройств. Вы можете буквально ввести любое значение в это поле, оно будет проигнорировано.

Сборка FreeNAS-9.2.1.9-RELEASE-x64 || Платформа Intel(R) Xeon(R) CPU E3-1230 V3 @ 3,3 ГГц
Память Crucial 1600 МГц 16 ГБ ECC CT2KIT102472BD160B || Шасси Fractal Design Node 304
Диск WD-Red — 6x3 ТБ || Материнская плата ASRock E3C226D2I || ИБП CP1000CPFLCD

Сборка FreeNAS 11.3-U2|| Процессор: Intel Xeon e5-1650 || 8x16 ГБ Samsung DDR4-2133 M393A2G40DB0-CPB || Супермикро 846e16-r1200b || X10SRL || Челсио T520-CR LACP

ЯносСр

Неофит

Хорошо. Последняя попытка. В противном случае я сдаюсь.

На всякий случай я перезагрузил ИБП. Безуспешно пытался подключиться к портам USB 2.0 и USB 3.1. Я запускаю команду

Вложения

Крис Мур

Сморщенный мудрец

Хорошо. Последняя попытка. В противном случае я сдаюсь.

На всякий случай я перезагрузил ИБП. Безуспешно пытался подключиться к портам USB 2.0 и USB 3.1. Я запускаю команду

Пользователь FreeNAS с 2011 года. В настоящее время работает, TrueNAS 12.0-U7 на одном сервере дома и на пяти на работе.

Этот проект был построен в 2018 году, но я повторно использовал название из предыдущей сборки. Это восьмой модуль FreeNAS, который я собрал для дома. Восемь систем за десять лет. Я сделал несколько ошибок на этом пути, научился чему-то и пытаюсь поделиться некоторыми из этих извлеченных уроков здесь, на форуме. Я даже собрал кое-какое оборудование, чтобы пару раз проверить.
Некоторое время у меня дома было три системы одновременно, но сейчас я делаю некоторые аппаратные изменения, и только один NAS подключен к сети.
Три пула в этой системе представляют три системы NAS, которые у меня были до консолидации. Для домашнего NAS это огромное шасси, способное вместить 48 дисков с данными и два загрузочных диска с парой внутренних пространств для дисков без оперативной замены.

ЯносСр

Неофит

@Chris Moore, к сожалению, я не специалист по Linux, поэтому я вернулся к Windows Server и запустил его, как я и ожидал, менее чем за 3 часа. К сожалению, я отказался от Freenas.
Спасибо.

Крис Мур

Сморщенный мудрец

Я просмотрел ветку обсуждения и, кажется, понял, в чем проблема.
Извините, что вы отказались от него, но FreeNAS основан на FreeBSD, то есть Unix, а не Linux.
Если вы когда-нибудь захотите попробовать еще раз, файловая система ZFS — очень хорошая вещь для защиты ваших данных.
Возможно, когда вашу текущую версию Windows потребуется заменить, вы можете попробовать еще раз, вместо того чтобы покупать другой продукт Microsoft.

Пользователь FreeNAS с 2011 года. В настоящее время работает, TrueNAS 12.0-U7 на одном сервере дома и на пяти на работе.

Этот проект был построен в 2018 году, но я повторно использовал название из предыдущей сборки. Это восьмой модуль FreeNAS, который я собрал для дома. Восемь систем за десять лет. Я сделал несколько ошибок на этом пути, научился чему-то и пытаюсь поделиться некоторыми из этих извлеченных уроков здесь, на форуме. Я даже собрал кое-какое оборудование, чтобы пару раз проверить.
Некоторое время у меня дома было три системы одновременно, но сейчас я делаю некоторые аппаратные изменения, и только один NAS подключен к сети.
Три пула в этой системе представляют три системы NAS, которые у меня были до консолидации. Для домашнего NAS это огромное шасси, способное вместить 48 дисков с данными и два загрузочных диска с парой внутренних пространств для дисков без оперативной замены.

Драйверы иногда удаляются из дерева, если они больше не обслуживаются, или иногда переименовываются, чтобы лучше отразить объем поддержки их оборудования, или заменяются более универсальным драйвером. В последнее время в код драйвера было внесено несколько архитектурных изменений, и драйверы, которые не были преобразованы кем-либо, в конечном итоге удаляются.

Это называется прогрессом. Мы делаем это, чтобы избежать ситуации, когда кто-то считает, что драйвер поддерживается, хотя на самом деле он медленно гниет в дереве. Это также избавляет дерево от старых хаков совместимости для кода, который все равно никто не использует.

Чтобы вернуть драйвер в текущую версию, вам нужно преобразовать его самостоятельно или попросить кого-нибудь сделать это за вас. Это несложно. Самая сложная часть любого драйвера — декодирование протокола, и это уже было сделано в старой версии.

4. Моя программа драйвера ИБП не работает. Я запускаю его как root, а root владеет устройством, так в чем проблема?

Ответ 1

Драйверы теряют привилегии суперпользователя задолго до открытия последовательного порта. Вам нужно будет изменить разрешения для этого порта, чтобы их новый идентификатор пользователя мог получить к нему доступ. Обычно это "никто", но его можно изменить во время компиляции с помощью configure --with-user.

Прочитайте сообщение об ошибке. Если у вас несоответствие разрешений, вы увидите что-то вроде этого:

Сейчас самое время указать, что использовать «никто» — плохая идея, поскольку это хак для доступа к NFS. Вам следует создать новую ролевую учетную запись (например, "ups" или "nut") и использовать ее вместо нее.

Кроме того, прокрутите вниз до вопроса "домены безопасности", чтобы увидеть еще лучший способ ограничения привилегированных операций. Ни драйверам, ни upsd никогда не нужны полномочия root, и этот ответ расскажет вам, как заставить их работать.

Ответ 2

Вы также можете указать пользователя с помощью "user literallayout">user = nut

5. upsc, upsstats и другие клиенты говорят отказано в доступе . Разрешения порта связи устройства (последовательный, USB или сетевой) в порядке, так что же дает?

В этом случае "доступ запрещен" означает доступ к upsd, а не к коммуникационному порту устройства. Вам отказывают, так как система не имеет разрешения на связь с upsd в соответствии с настройками доступа.

Причин может быть много. Чтобы исправить это, проверьте:

  • директива LISTEN в upsd.conf. Он должен разрешать ваш локальный или удаленный метод доступа,
  • правила вашего брандмауэра. Порт 3493/tcp должен быть открыт для входящих соединений,
  • ваша конфигурация tcp-wrappers (hosts.allow и hosts.deny).

Дополнительную информацию см. на справочных страницах upsd(8) и upsd.conf(5).

6. Я получаю сообщение об ошибке not listening on… от upsd.

Проверьте директиву LISTEN. Это должен быть один из допустимых IP-адресов компьютера, на котором работает upsd (или 0.0.0.0 , что соответствует INADDR_ANY ), а не адрес клиента.

Директива LISTEN позволяет выбрать, какой интерфейс будет прослушивать upsd. Если вы пытаетесь ограничить количество клиентов, которые могут подключаться к upsd, вам нужно либо использовать tcp-обертки, либо правила брандмауэра ядра.

Это ограничение не является специфичным для NUT — оно в равной степени относится к вашему веб-серверу или демону почтовой программы.

7. Какой ИБП купить?

Один с гарантией возврата денег без вопросов. Серьезно. Разработчики NUT не могут брать на себя ответственность за рекомендацию ИБП (дополнительную информацию о явном отсутствии гарантии см. в файле LICENSE) только для того, чтобы узнать, что производитель изменил внутренние компоненты ИБП без изменения названия модели.

Тем не менее, время от времени некоторые поставщики помогают, предоставляя оборудование для тестирования, результаты своих усилий по тестированию или спецификации протоколов. Мы стараемся публиковать эту информацию на веб-сайте NUT, чтобы вы могли принять это во внимание при выборе бренда UPS.

8. У меня есть APC Smart-UPS, подключенный серым последовательным кабелем APC, и он не работает.

Тип Back-UPS в драйвере genericups работает, но тогда я не могу использовать все его полезные функции.Почему не работает нужный драйвер?

Проблема заключается в выборе кабеля. Серые кабели APC, как правило, выполняют только «тупую» сигнализацию — очень простую информацию «да/нет» о состоянии батареи и линии. Хотя этого достаточно, чтобы определить состояние низкого заряда батареи во время работы от батареи, вы упускаете все преимущества, за которые заплатили.

Обратите внимание, что 940-0095B представляет собой серый кабель, но на самом деле это двухрежимный кабель, который можно использовать в интеллектуальном режиме. Если у вас есть этот кабель, вам нужно отредактировать файл ups.conf, чтобы он выглядел следующим образом:

Все остальные серые кабели от APC считаются "глухими".

Если ваш серый кабель не 940-0095B, ​​решение состоит в том, чтобы отказаться от этого кабеля и найти тот, который поддерживает «умную» сигнализацию APC. Обычно они поставляются с ИБП и имеют черный цвет. Если ваш смарт-кабель отвалился, его можно довольно легко собрать с помощью нескольких разъемов и кабеля — никаких замысловатых проводов или резисторов.

Есть также текстовая версия этой схемы в каталоге docs/cables исходного дистрибутива NUT. Любой из них позволит вам создать хороший клон кабеля APC 940-0024C.

Есть более простые решения с использованием 3-х проводов, которые тоже работают нормально, но Powerchute не найдет петлевые DTR-DCD и RTS-CTS и будет раздражаться. Если вы никогда не планируете использовать Powerchute, достаточно 3 проводов (RxD, TxD, GND).

Следует также отметить, что драйвер genericups не может обнаружить ИБП, поэтому он с радостью запустится, если сможет открыть последовательный порт. Простое его запуск не обязательно является признаком успеха. Вы должны запустить его, а затем проверить статус с помощью upsc или аналогичного, чтобы убедиться, что он правильно считывает оборудование.

9. Почему upsd не реализует функциональность upsmon? Мне нужно запустить ТРИ программы для мониторинга моего ИБП!

Ответ 1

Мы стараемся следовать философии "инструмент для работы". Это может означать запуск большего количества программ, но гибкость, которую вы получаете, обычно того стоит.

Да, на машине с подключенным ИБП, как правило, работают 3 процесса (драйвер, upsd, upsmon), но такая конструкция допускает гораздо большую настройку. Представьте себе комнату данных с кучей машин, питающихся от одного и того же ИБП. Остальные просто запускают upsmon.

Кроме того, если бы upsmon объединили с upsd, upsd стал бы еще больше, чем сейчас. У вас будет на один процесс меньше, но потребление оперативной памяти будет примерно таким же, как сейчас.

См. раздел "Комната данных" в docs/config-notes.txt для получения дополнительных идей и пояснений по конфигурации.

Ответ 2

Если вас это действительно беспокоит, засучите рукава и используйте код sockdebug, чтобы написать программу типа "upsmon", которая находится поверх сокетов состояния. По сети работать не будет, а значит и upsd не нужен. Это также означает, что только один хост может контролировать ИБП.

Это также хороший вариант, если вы не можете использовать код сетевого мониторинга из соображений безопасности.

Подробнее об этом и других связанных темах см. в файле TODO.

10. Почему upssched не является частью upsmon?

У большинства пользователей никогда не будет причин использовать upssched. Это сложно, и сделать это правильно для вашей ситуации может быть сложно. Размещение его в отдельной программе экономит ресурсы и позволяет большинству людей полностью его избежать.

Это также соответствует ответу на предыдущий вопрос.

11. Почему upsmon не отправляет сигнал SIGPWR для инициализации, чтобы он мог обрабатывать события питания?

Ответ 1

В новых версиях справочной страницы инициализации, взятой из пакета sysvinit, говорится, что использование SIGPWR не рекомендуется, поскольку канал управления /dev/initctl является предпочтительным способом связи.

Ответ 2

Название игры — портативность. Не каждый init обрабатывает такие сигналы изящно. Более того, некоторые администраторы могут захотеть сделать что-то по-другому, даже если у них запущена такая функция инициализации.

Итак, для обеспечения совместимости upsmon просто вызывает команду оболочки. Если вы хотите использовать SIGPWR из init, просто поместите правильную строку «kill» в сценарий оболочки и сделайте так, чтобы upsmon вызывал ее. Выигрывают все.

12. Почему бестапы не разговаривают с моим ИБП Best Fortress?

Для оборудования с очень похожими именами используются как минимум два разных протокола. Драйвер bestups, как правило, поддерживает устройства, построенные на основе более нового протокола PhoenixTec, а драйвер bestfortress поддерживает более старое оборудование Best.

Похожая проблема возникает и с драйвером tripplite_usb: он поддерживает только старый проприетарный протокол. Более новые модели ИБП Tripp Lite, соответствующие стандартам, поддерживаются интерфейсом usbhid-up. Мы называем драйверы на основе информации, доступной на момент написания драйвера, которая часто является неполной.

13. Что насчет устаревших данных?

Это означает, что ваш драйвер ИБП некоторое время не обновлялся. upsd отказывается предоставлять устаревшие данные, поэтому вы получаете сообщения об устаревших данных.

Если это произойдет с вами, убедитесь, что ваш драйвер все еще работает. Также посмотрите системный журнал. Иногда драйвер теряет соединение с ИБП, что также приводит к устареванию данных.

Это также может произойти на некоторых платформах виртуализации. Если вы не можете воспроизвести проблему на физическом компьютере, сообщите об ошибке поставщику программного обеспечения для виртуализации.

Если это происходит часто, вы можете включить DEADTIME в upsmon.conf, чтобы отключить некоторые предупреждения на более короткие интервалы времени. Будьте осторожны при настройке этого числа, так как оно напрямую влияет на то, как долго вы будете работать от батареи, не зная, что происходит с ИБП.

Примечание: иногда для обновления некоторых драйверов требуется больше времени, чем позволяет значение MAXAGE по умолчанию (в upsd.conf). В результате они временно помечаются как устаревшие, хотя все в порядке. Это может произойти с оборудованием MGE Ellipse — см. man-страницы mge-shut или usbhid-ups. В таких случаях вы можете увеличить значение MAXAGE, чтобы избежать этих предупреждений; попробуйте значение 25 или 30.

14. Почему клиентские программы сообщают Драйвер не подключен, когда я пытаюсь их запустить?

Это означает, что upsd по какой-то причине не может подключиться к драйверу. Возможно, ваша запись в ups.conf неверна или драйвер не запущен. Возможно, ваш путь состояния настроен неправильно.

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

Примечание: если вы вскочили обеими ногами и не следовали документу INSTALL.nut, вы, вероятно, запустили upsd сами по себе. Вы должны запустить upsdrvctl start, чтобы запустить драйверы после настройки ups.conf.

В операционных системах с поддерживаемой структурой управления службами вы можете поместить свои драйверы NUT в отдельные экземпляры служб с помощью повторной синхронизации upsdrvsvcctl, а затем управлять ими с помощью таких команд, как upsdrvsvcctl stop и запуск upsdrvsvcctl (обратите внимание, что в других системах этот инструмент может быть не установлен предварительно с помощью пакета).

15. Почему пути в вашей документации не соответствуют установленному мной пакету?

В каждом дистрибутиве есть соглашения о том, где следует хранить определенные типы файлов. Проект NUT не может отслеживать все эти соглашения, поэтому в документации предполагается префикс каталога установки по умолчанию /usr/local/ups при описании расположения файлов. Дистрибутивы, как правило, не меняют базовое имя файлов, поэтому вы можете искать драйверы и файлы конфигурации в пакетной базе данных установленных файлов. Например, в производных Debian или Ubuntu вы можете использовать dpkg --search usbhid-ups, чтобы узнать, где хранятся драйверы.

16. Во время выключения все работает отлично, и ИБП снова включается, но моя система остается выключенной. Что происходит?

Предполагая, что у вас нет проблемы, описанной в следующем вопросе, вероятно, у вас есть материнская плата ATX, в вашем ядре включены APM или ACPI (здесь предполагается Linux) и вы приближаетесь к остановке в нижней части сценариев завершения работы.

Ваша машина подчиняется, выключается и остается выключенной, так как запоминает последнее состояние при перезапуске ИБП.

Одним из решений является изменение сценариев завершения работы, чтобы вы никогда не достигли этой точки. Вы хотите, чтобы система умерла, не достигнув той части, где ядро ​​говорит ей завершить работу. Возможный сценарий может выглядеть следующим образом:

Другое решение — изменить настройку BIOS на "всегда включено" вместо "последнее состояние", если это возможно.

17. Моя система имеет блок питания ATX. Он нормально выключается, но не включается. Что я могу сделать, чтобы это исправить?

Это зависит от осведомленности производителя вашей материнской платы и не зависит от ОС. Вы должны сделать одно из следующих действий в зависимости от того, что поддерживается:

  • Установите на материнской плате перемычку, означающую "возврат после сбоя".
  • Установите в BIOS что-нибудь, что говорит "включение питания после сбоя питания"
  • Попробуйте использовать что-то (например, конденсатор) рядом с кнопкой питания, чтобы "нажать" ее на себя — это может не сработать, если нужна задержка.
  • Взломите кабель между блоком питания и материнской платой, чтобы заставить его включаться при наличии сетевого питания.
  • Научите обезьяну следить за машиной и нажимать кнопку питания, когда отключение закончится. Это может работать, но приводит к большим счетам за продукцию.

Если вы не можете использовать ни один из первых двух вариантов, отдайте доску противнику. Пусть об этом беспокоятся.

18. Мой Mac не включается сам по себе в Linux после выключения ИБП. Что я могу с этим сделать?

Это примерно та же ситуация, что и вопрос об ATX выше, только хуже. Более ранние компьютеры Mac, по-видимому, поддерживали хак, когда вы могли ввести несколько магических символов в /dev/adb, чтобы включить «режим сервера». Это заставит систему перезагрузиться в автоматическом режиме.

Из сообщения Usenet:

Более поздние модели PowerPC Mac с PMU и соответствующим драйвером ядра могут добиться того же эффекта с помощью следующей команды:

На следующих страницах есть немного более неуклюжие ответы, связанные с использованием setpci и сильно зависящие от модели:

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

Остальные все еще ждут ответа. Загрузка в Mac OS для доступа к панели «файловый сервер» не является приемлемым решением.

19. Мой Mac не включится сам по себе в Mac OS X после выключения ИБП. Что я могу с этим сделать?

Это относительно просто исправить. Если у вас есть доступ к консоли или VNC, войдите в систему как администратор, перейдите в «Системные настройки», нажмите «Энергосбережение», перейдите на вкладку «Параметры», установите флажок «Автоматически перезапускать после сбоя питания».

Кроме того, вы можете подключиться через SSH и запустить "sudo pmset autorestart 1", чтобы добиться того же эффекта.

20. Я хочу, чтобы драйверы и upsd находились в их собственных доменах безопасности. Как это можно сделать?

Используя несколько учетных записей ролей и общую группу, вы можете ограничить доступ к таким ресурсам, как последовательный порт (порты), ведущие к оборудованию ИБП.

Это просто пример. Измените значения в соответствии с вашими системами.

  • Создайте пользователя с именем nutdev и другого с именем nutsrv . Поместите их обоих в группу под названием nut .
  • Измените владельца всех последовательных портов, которые будут использоваться, на nutdev и установите режим 0600. Затем измените владельца каталога состояния (обычно /var/state/ups) на nutdev.nut.

Для моей системы разработки это дает следующие записи /dev:

Переключитесь на root, затем запустите драйверы:

Тогда список для /var/state/ups выглядит следующим образом:

Возможно, вам придется сначала удалить старые файлы сокетов или состояния, если вы переходите на эту схему безопасности из более старой версии. Драйверы создадут новые файлы с правильными владельцами и режимами.

Обратите внимание, что /var/state/ups доступен для групповой записи, так как upsd поместит сюда файл upsd.pid.

Возможно, вам придется изменить группы upsd.conf и upsd.users, чтобы сделать их доступными для чтения. Эти файлы не должны принадлежать NutSRV, так как кто-то может скомпрометировать демон и изменить файлы конфигурации. Вместо этого поместите Nutsrv в группу (в данном примере «nut»), а затем создайте файлы, принадлежащие root.nut, с режимом 0640.

После того, как файлы конфигурации будут готовы, запустите upsd:

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

Если вам это нравится, вы, вероятно, также найдете процесс chroot полезным и интересным. Дополнительные сведения см. в файле security.txt.

21. В чем смысл приведенной выше концепции домены безопасности?

Суть в том, чтобы ограничить свои потери. Если кто-то случайно взломает upsd в этой среде, он должен получить доступ только к этой одной учетной записи пользователя. Прямой доступ к последовательному устройству невозможен, так как он принадлежит другому пользователю.

Есть также возможность запуска драйверов и upsd в chroot-окружении. См. файл chroot.txt в исходном дистрибутиве для примера реализации.

Зачем помогать потенциальным вандалам?

Скажем так: я написал хорошие куски этого материала и до сих пор запускаю программы локально. Вам определенно следует рассмотреть возможность использования этой техники.

22. Как я могу заставить upsmon выключать мою систему через определенный промежуток времени?

Возможно, вы не захотите этого делать, так как это не увеличит время работы от батареи. Предполагая, что у вас есть веская причина для этого (см. следующую запись), посмотрите некоторые идеи в файле scheduling.txt или на справочной странице upssched(8).

23. Почему upsmon не выключает мою систему? Я выдернул вилку из розетки и ничего не произошло.

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

Если в вашей системе предусмотрена очень сложная процедура выключения, вам может потребоваться выключение до того, как ИБП поднимет флаг низкого заряда батареи. Однако для большинства пользователей поведение по умолчанию является адекватным.

Спросите себя: зачем покупать хороший большой ИБП с подходящей батареей и соответствующим временем работы, а затем отключать его раньше времени? Во всяком случае, я бы предпочел еще несколько минут работы от батареи, в течение которых питание может вернуться. После возобновления подачи электроэнергии все работает как обычно, без видимых перерывов в работе.

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

См. upssched.txt для получения информации о том, как вы можете завершить работу досрочно, если это то, что вы действительно хотите сделать.

24. Программы CGI сообщают, что доступ к этому хосту не авторизован — что происходит?

Эти программы должны увидеть хост в вашем файле hosts.conf, прежде чем они попытаются установить связь. Это удерживает людей от случайного ввода "хост-раздела">

25. upsd запущен, почему я не могу к нему подключиться?

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

У меня есть пара серверов LINUX и Synology NAS на моем ИБП CyberPower 1350. Я хотел бы следить за уровнем заряда батареи и перебоями в работе. Я могу использовать маленькую кнопку на передней панели, чтобы просмотреть статус, ИЛИ я могу установить NUT и контролировать свой ИБП с помощью классной веб-страницы и гораздо более точной статистики! Я иду по маршруту веб-страницы!


Настройка NUT на Raspberry

Создайте образ SD-карты и выполните обычные действия по настройке. Проверьте мой РУКОВОДСТВО, если у вас есть вопросы. Я изменил имя хоста на «ups», чтобы идентифицировать мой новый сервер. Подключите кабель USB к ИБП и к Raspberry. Проверьте соединение с помощью «lsusb», буквально «список USB-устройств»:

Это пакет Network UPS Tools или сокращенно «NUT». Приятно иметь реальные инструменты в репозиториях Raspberry для легкой установки! w00t!

Конфигурация NUT

Для начала добавим соединение и ИБП в конфигурацию в /etc/nut/ups.conf. Мне нравится добавлять свои материалы прямо внизу, чтобы я мог быстро найти их в будущем. Добавьте следующую «строфу»:

Надеюсь, ВАШ ИБП похож на мой и хорошо работает с драйвером usbhid-ups. Имя может быть любым, какое вам больше нравится. Поместите его в [квадратные] скобки. Описание также полностью зависит от вас. Я бы посоветовал попробовать автоматические настройки, в противном случае вы можете найти свою модель здесь.

Далее нам нужно настроить upsmon. Опять же, я просто добавлю то, что мне нужно, в конец файла. Первая строка показывает формат. Вы можете включить его в качестве комментария для дальнейшего использования. :

Система — это имя, которое мы настроили в последнем бите. Powervalue 1 подходит для домашнего использования. Логин и пароль на ваше усмотрение. (Мои основаны на жестко запрограммированных учетных данных, которые использует Synology NAS.) «master», потому что ИБП подключен непосредственно к этому устройству через USB-кабель. Клиенты будут определены как «подчиненные».

Этот же «пользователь» затем добавляется в файл /etc/nut/upsd.conf. В самом низу файла добавьте:

Наконец, установите режим работы всей этой штуки. Отредактируйте /etc/nut/nut.conf и измените последнюю строку:

Большой перезапуск

Теперь давайте перезапустим эти процессы и посмотрим, сможем ли мы подключиться. Я собираюсь просто перезагрузиться. Это гарантирует, что все файлы конфигурации сохранены, а файлы модулей включены. Как только Raspberry снова заработает, попробуйте подключиться к UPSC и имени вашего UPS:

Веб-сервер UPS

Ура! Оно работает! Теперь устанавливаем веб-компонент, как и обещал! Сначала установите веб-сервер и веб-материалы NUT:

Отредактируйте файл /etc/nut/hosts.conf, чтобы разрешить CGI-скриптам доступ к монитору. Добавьте одну строку в конец файла:

Включите CGI в apache и перезапустите веб-сервер:

Теперь вам просто нужно убедить apache, что вы действительно хотите включить CGI, раскомментировав следующее в /etc/nut/upsset.conf:

… и вы сможете перейти на веб-страницу:


В следующем посте мы рассмотрим настройку клиентских или «подчиненных» систем. Это позволяет процессу upsmon отправлять команды выключения на серверы, подключенные к этому ИБП, и выполнять корректное завершение работы, а не сбой при выключении света!

Существует два разных способа наблюдения за ИБП с помощью nut: либо открыть аппаратное обеспечение ИБП для GNOME Power Manager через hal, либо контролировать ИБП напрямую с помощью upsmon и upsd. При каждом подходе есть компромиссы. Давайте посмотрим на оба.

Используйте GNOME Power Manager и hal

В системах Debian или Ubuntu установите пакет nut-hal-drivers.

$ sudo apt-get install nut-hal-drivers

GNOME Power Manager уже должен быть запущен и должен автоматически обнаруживать ИБП. Если он не запущен, вы можете запустить его из командной строки или настроить автоматический запуск в каждом сеансе с помощью системной настройки «Сеансы». Если все работает, на панели задач появится значок.

Значок GNOME Power Manager на панели задач и подсказка.

Значок и подсказка на панели задач GNOME Power Manager.

Нажав значок на панели задач и выбрав в меню ИБП, вы получите подробную информацию.

Информация об ИБП GNOME Power Manager.

Сведения об ИБП GNOME Power Manager.

GNOME Power Manager можно настроить на выключение или перевод компьютера в спящий режим, когда уровень заряда батареи ИБП падает ниже определенного порога. Существуют также ключи gconf для изменения используемых пороговых значений, процентного соотношения или оставшегося времени, а также определения этих пороговых значений.

Этот метод мониторинга ИБП удобен для рабочей станции, но имеет три существенных недостатка:

Обновление от 06 января 2009 г.:

Арно Кетт, руководитель проекта по гайкам, сообщил мне о двух других существенных недостатках использования гаечных отверток:

  1. gnome-power-manager не отключает ИБП в конце выключения из-за сбоя питания. Это означает, что либо ИБП будет полностью разряжен, либо, что еще хуже, питание будет восстановлено до полной разрядки аккумулятора, и компьютер больше не запустится автоматически.
  2. Дальнейшая работа над гаечными отвертками проводиться не будет. HAL будет заменен на DeviceKit, а nut-hal-драйверы будут заменены на DeviceKit-power.

Вывод. Не используйте драйверы nut-hal-drivers, если вам действительно не нужен причудливый значок уведомления.

Используйте nutd и upsmon

Установите пакет гаек. Это должно конфликтовать с nut-hal-drivers, если он уже установлен.

$ sudo apt-get install nut

При установке пакета nut необходимо добавить пользователя и группу nut. Если это не так, вам нужно добавить их вручную. Затем создайте или отредактируйте файл /etc/nut/ups.conf:

Замените ttyS0 на ttyS1, если ваш ИБП подключен ко второму последовательному порту. Затем выполните следующие две команды, чтобы заставить udev внести необходимые изменения разрешений:

$ sudo udevadm control --reload-rules
$ sudo udevadm trigger

Обратите внимание, что два предыдущих шага не нужны, если у вас ИБП с USB-интерфейсом. Наконец, мы можем убедиться, что гайка правильно определяет ИБП:

$ sudo upsdrvctl start

Вы должны увидеть примерно следующее:

Теперь нам нужно настроить upsd и upsmon. upsd связывается с драйвером ИБП, который мы только что запустили. upsmon связывается с upsd и фактически выключает машину в случае сбоя питания. Зачем дополнительный уровень косвенности? Несколько экземпляров upsmon можно запустить на разных машинах. Все они могут использовать один и тот же физический ИБП. Создайте файл /etc/nut/upsd.conf следующим образом:

$ sudo chown root:nut /etc/nut/*
$ sudo chmod 640 /etc/nut/*

Наконец, отредактируйте файл /etc/default/nut, чтобы upsd и upsmon запускались при загрузке системы:

Момент истины:

$ sudo /etc/init.d/nut start

Проверьте конец /var/log/daemon.log, чтобы убедиться, что все запустилось. Кроме того, вы можете запустить следующую команду, которая должна вывести некоторую статистику:

Замените apc на имя, которое вы назвали для своего ИБП. То, что осталось? Сохраните свою работу, отключите ИБП и убедитесь, что ваша машина выключается корректно. Это может занять некоторое время. По умолчанию upsmon ждет, пока уровень заряда батареи не станет критически низким, прежде чем начать отключение. Какой смысл иметь 20 минут автономной работы, если вы не собираетесь их использовать?

Как видите, настроить второй метод немного сложнее. Тем не менее, использование upsd и upsmon, в отличие от гайковертов, вероятно, является более надежным методом мониторинга ИБП. Кроме того, это единственный доступный вариант, если вам нужно контролировать один ИБП с нескольких компьютеров.

Читайте также: