[sisyphus] apcupsd - Killpower
Sergey
=?iso-8859-1?q?a=5Fs=5Fy_=CE=C1_sama=2Eru?=
Пт Ноя 28 10:57:25 MSK 2003
On Friday 28 November 2003 11:23, Nicholas Tretyachenko wrote:
> В результате тестирования apcupsd выявились следующие проблемы:
> 1) Если /usr и /var находятся на отдельных файловых системах,
> при выполнении shutdown apccontrol не может разослать сообщение
> пользователям с помощью wall (скрипт /etc/apccontrol, строка 61 ),
> поскольку к этому моменту /usr размонтирован. Попытка записи в
> /var/lib/apcupsd/apcupsd.events также приводит к ошибке.
Хм. РАзьве он это все делает не до того, как шатдаун начать ? Что-то
я ни разу такой проблемы не замечал...
> Версия apcupsd - 3.0.15
А не старовата ? А то оно 3.10.8 последнее.
А вообще, там еще скрипты полезно переделать, на мой взгляд.
С таким набором всяких разных ковыряться неудобно. Проще примерно так:
==== upsdmessages
#!/bin/sh
#
# This shell script if placed in /etc/apcupsd
# will be called by /etc/apcupsd/apccontrol via
# symlinks generated by makesymlinks script
# when the UPS goes on batteries.
# We send an email message to root to notify him.
#
# It's need of "sed" !
#
SYSADMIN=root
MAIL="mail"
HOSTNAME=`hostname`
COLOR=""
NAME=`echo $0 | sed 's|^.*/||'`
case $NAME in
onbattery)
MSG="$HOSTNAME Power Failure !!!"
;;
mainsback)
MSG="$HOSTNAME Power has returned"
;;
commok)
MSG="$HOSTNAME Serial port communications with UPS restored"
;;
commfailure)
MSG="$HOSTNAME Serial port communications with UPS lost"
;;
changeme)
MSG="$HOSTNAME UPS battery needs changing NOW."
;;
masterconnect)
MSG="slave $HOSTNAME received connection from master"
;;
mastertimeout)
MSG="slave $HOSTNAME lost contact with master"
;;
upsdmessages)
MSG="$HOSTNAME test upsdmessages."
;;
*)
MSG="$HOSTNAME unknown excecute upsdmessages."
esac
#
(
echo "$MSG"
echo " "
/sbin/apcaccess status
) | $MAIL -s "$MSG" $SYSADMIN
exit 0
====
==== changescripts
#
# This script if placed in /etc/apcupsd
# will be called only once manualy for generate
# symlinks to upsdmessages script
# This symlinks will be called by /etc/apcupsd/apccontrol
# when the UPS goes on batteries.
#
rm -f changeme
rm -f commfailure
rm -f commok
rm -f mainsback
rm -f onbattery
rm -f mastertimeout
rm -f masterconnect
ln -s upsdmessages changeme
ln -s upsdmessages commfailure
ln -s upsdmessages commok
ln -s upsdmessages mainsback
ln -s upsdmessages onbattery
ln -s upsdmessages mastertimeout
ln -s upsdmessages masterconnect
====
--
С уважением, Сергей
a_s_y на sama.ru
Подробная информация о списке рассылки Sisyphus