Page 1 of 1
Настройка службы UPS
Posted: 06 Sep 2013 04:40
by x25m
Добрый день. У меня на одном ИБП висит сервер Win2003 и NAS4Free, необходимо настроить автоматическое отключение серверов при пропадание питания. В качестве ведущего "мастер" настроил службу UPS на NAS4Free (все работает), а в качестве ведомого должен быть Win2003 с клиентом WinNUT. Столкнулся со следующей проблемой при настройке службы UPS не могу создать пользователя в файле upsd.users, там забит тока рут и пароль рута это не есть правильно. Когда пытаюсь поменять в ручную при перезапуске службы UPS все обнуляется. Подскажите что делать, так как рутовый пароль от NAS4Free светить на винде не хочется, да и неправильно как то управлять демоном nut из под рута.
Re: Настройка службы UPS
Posted: 06 Sep 2013 20:49
by MikeMac
я чуть-чуть порылся, похоже что скрипт
/etc/rc.d/nut
при каждом рестарте генерит конфиги, они складываются сюда
/var/etc
судя по
viewtopic.php?f=46&t=4857
простейшим хаком будет создать модифицированный upsd.users, сохранить его куда-то, где он переживёт ребут
а затем Postnit скриптом
- подменять upsd.users
- перезапускать демона
upsd -c reload
Ну а починкой проблемы IMHO было бы переписывание логики nut по уму - чтобы он создавал специального пользователя и от него работал, а не от рута. Тут надо дергать разработчиков. Но если сделать работающий хак - это будет первым шагом
Re: Настройка службы UPS
Posted: 07 Sep 2013 16:14
by alexey123
x25m wrote:Добрый день. У меня на одном ИБП висит сервер Win2003 и NAS4Free, необходимо настроить автоматическое отключение серверов при пропадание питания. В качестве ведущего "мастер" настроил службу UPS на NAS4Free (все работает), а в качестве ведомого должен быть Win2003 с клиентом WinNUT. Столкнулся со следующей проблемой при настройке службы UPS не могу создать пользователя в файле upsd.users, там забит тока рут и пароль рута это не есть правильно. Когда пытаюсь поменять в ручную при перезапуске службы UPS все обнуляется. Подскажите что делать, так как рутовый пароль от NAS4Free светить на винде не хочется, да и неправильно как то управлять демоном nut из под рута.
Загасить винду по телнету командой tsshutdn 0 /delay:0 /powerdown . Всех клиентов - нафик.
На винде завести юзера члена группы телнетклиенты (можно использовать существующего юзера с паролем)
Затем создать скриптик для наса, который будет гасить винду, если пропало питание, причем запускать его через джейл
Нечто похожее на следующее.
Code: Select all
#!/usr/local/bin/expect -f
spawn telnet -l юзер айпиадресс
expect "password:"
send пароль\r
expect ">"
send "tsshutdn 0 /delay:0 /powerdown\r"
expect ">"
send exit
sleep 5
запускать скрипт можно так : jexec <jail_name> <scriptname>