NUT -- upssched nespusti cmdscript
Daniel Prynych
Daniel.Prynych na buzuluk.cz
Úterý Únor 12 12:46:26 CET 2002
Cely problem je patrne v pravech, upsmon nyni startuje jako root ale hned si
spusti dalsi proces ktery provadi monitorovani UPS a ten bezi jiz pod jinym
uzivatelem vetsinou nobody, ale zalezi na nastaveni prekladu.
Podle popisu jste nastavil PIPEFN jako /var/run/upssched.pipe ale do /var/run
ma obecne povoleno zapisovat jen root.
Smazte tedy radku PIPEFN ... nebo ji radsi nastavte nekam kam muze upsmon
zapisovat.
Pokud chcete zpoustet upsmon s pravy root-a zpuste ho s parametrem -p.
Zde je kratky priklad jako dukaz ze to opravdu jde.
Snad jsem to moc nezamotal, upssched neni primo moje parketa.
Tedy jsem pripojil kratky priklad.
-------upsmon.conf
NOTIFYCMD /usr/local/ups/bin/notifycmd
# --------------------------------------------------------------------------
-------upssched.conf
CMDSCRIPT /usr/local/ups/bin/upssched-cmd
PIPEFN /var/tmp/upssched.pipe
AT ONBATT * START-TIMER upsgone 1
AT ONLINE * CANCEL-TIMER upsgone
---------notify.cmd
#!/bin/bash
logger -s "................$1 "
logger -s "$UPSNAME ";
logger -s "$NOTIFYTYPE ";
/usr/local/ups/sbin/upssched
-------------upssched-cmd
#!/bin/bash
logger -s "UPSSCHEDULER STARTING $1"
case $1 in
upsgone)
logger -s "The UPS has been on battery for awhile";
logger -s "shutdown $1";;
*)
logger -s "Unrecognized";;
esac;
A zaznam z logu jako dukaz.
Feb 12 12:12:30 kecal upsmon[1906]: UPS localhost on battery
úno 12 12:12:30 kecal logger: ................UPS localhost on battery
úno 12 12:12:30 kecal logger: localhost
úno 12 12:12:30 kecal logger: ONBATT
úno 12 12:12:31 kecal logger: UPSSCHEDULER STARTING upsgone
úno 12 12:12:31 kecal logger: The UPS has been on battery for awhile
úno 12 12:12:31 kecal logger: shutdown upsgone
Feb 12 12:12:55 kecal upsmon[1906]: UPS localhost on line power
úno 12 12:12:55 kecal logger: ................UPS localhost on line power
úno 12 12:12:55 kecal logger: localhost
úno 12 12:12:55 kecal logger: ONLINE
-----------------------------------------------
Daniel Prynych
> Dobry den,
> jak mi bylo porazeno zde v konferenci (dik), chtel jsem pouzit upssched
> z baliku NUT (v0.45.3) k shutdown serveru po danem case (ne az na
> battery low) ... doplnil sem /etc/init.d/halt podle navodu ... pak jsem
> vytvoril skripty notifycmd a upsschedcmd ... situace ja takova ze po
> prijeti signalu ONBATT upsmon spusti notifycmd ktery koreknte (aspon si
> to podle vypisu ze stdout myslim) spusti upssched, ale ten uz po zadanem
> case nespusti upsschedcmd ktery ma provest samotny shutdown ... uz se s
> tim param dost dlouho a dosli mi napady (ale to uz je podruhe s NUT :)
>
> RH7.1
> UPS Victron Lite (kabel dle navodu)
Další informace o konferenci Linux