2gusia (2gusia) wrote,
2gusia
2gusia

Category:

Отключение Windows 7 PC по команде с NUT при сбое по питанию

В прошлый раз мы настроили конфигурацию с отключением двух NAS, оба из которых питаются от одного UPS, но кабелем USB, естественно, подключён только один. Но у меня в этот же UPS включён и Windows комп. давайте и его научим получать сообщение от NAS на nas4free и нормально отключаться. Как и в прошлый раз, приходится держать пароль root в открытом доступе, что небезопасно и годится только для доверенной домашней сети.

Во времена Windows XP у меня эту задачу выполнял WinNUT. Но с переходом W7 работать он отказался. Зато появился полный Windows порт NUT. C ним, пожалуй, только одна проблема - отсутствие понятной пользователю Win документации. Даже гуглится с трудом. Давайте исправим.

1) Ставим NUT для Windows. Здесь находим последнюю на момент версию для Windows. На момент написания это Beta NUT 2.6.5-3.

2) Устанавливаем её. Сильно советую ставить не в папку по умолчанию, а в папку с именем попроще, я выбрал С:\NUT

3) Редактируем конфигурационные файлы. Они текстовые и лежат в С:\NUT\etc
Нам понадобится создать несколько файлов, их имена даю в фигурных скобках {имя_файла}, ниже - содержание. Советую в конце последней строки нажимать Enter, чтобы строка им заканчивалась. Просто на всякий случай.
{nut.conf}
MODE = netclient

{upsd.users}
[root]
password  = PasS
upsmon slave

- ставите, конечно, свой пароль root для вашего nas4free вместо PasS

{upsmon.conf}
RUN_AS_USER admin
MONITOR APC@192.168.1.34 1 root PasS slave
MINSUPPLIES 1
SHUTDOWNCMD "shutdown.exe -s -t 0 -c \"Bla-bla-bla.\""
NOTIFYCMD upssched.exe
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG "C:\\killpower.flag"
NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5

- не всё работает, в частности с ведением лога проблемы - но не очень то и хотелось.
- снова ставите свой пароль root для вашего nas4free вместо PasS, а также имя важего UPS вместо APC и правильный IP адрес NAS
- в первой строке укажите имя пользователя-администратора вашего Win PC вместо моего admin

nut_win3) Запускаем NUT обязательно от имени администратора, см рис.

4) В принципе всё, но стоит сделать проверку
Идем в командную строку Windows,
cd c:\NUT\bin
upsc APC@192.168.1.34

- должен пойти вывод характеристик UPS

5) Идём в командную строку master NAS и даём команду на отработку сбоя по питанию
upsmon -c fsd

Обе машины, и NAS и Windows, через несколько секунд начинают процесс штатного выключения

Бинго!

PS В принципе, полезно запускать от имени администратора NUT при старте, например как описано здесь.

PPS А ещё немного подумав, решил, что запускать сервис надо скорее руками и если надолго комп оставляешь. Например - на ночь терабайты качать. А если за ним сидишь - и самому выключить нетрудно.
Tags: nas, nas4free, ups, руками
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 11 comments