====== Installazione apcups su RedHat 4 EL ======
Il pacchetto **apcupsd** ufficiale per RedHat 4 EL non contiene tutte le componenti (ad esempio l'interfaccia web) ed è di una vecchia versione. Preferita la pacchettizzazione recente trovata sul sito [[http://dag.wieers.com/rpm/packages.php|dag.wieers.com]]. Il pacchetto non ha richiesto dipendenze.
===== Due UPS collegati allo stesso server =====
Al server sono collegati due gruppi di continuità, un **APC-3000 con cavetto USB** e un **APC-1400 con cavetto seriale**. Si vogliono avere due demoni ''apcupsd'' in esecuzione contemporaneamente: si creano due directory di configurazione copiandoci tutto il contenuto della ''/etc/apcupsd/'':
* **''/etc/apcupsd/1400/''**
* **''/etc/apcupsd/3000/''**
Si configurano i due file **''apcupsd.conf''**, ecco le parti rilevanti:
UPSCABLE usb
UPSTYPE usb
DEVICE
SCRIPTDIR /etc/apcupsd/3000
PWRFAILDIR /etc/apcupsd/3000
BATTERYLEVEL 10
MINUTES 5
TIMEOUT 600
UPSCLASS standalone
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551
UPSNAME APC_3000
UPSCABLE smart
UPSTYPE apcsmart
DEVICE /dev/ttyS0
SCRIPTDIR /etc/apcupsd/1400
PWRFAILDIR /etc/apcupsd/1400
BATTERYLEVEL -1
MINUTES -1
TIMEOUT 0
UPSCLASS standalone
NETSERVER on
NISIP 0.0.0.0
NISPORT 3552
UPSNAME APC_1400
Inoltre si sostituisce lo script **''/etc/apcupsd/1400/apccontrol''** con il file fornito come esempio **''safe.apccontrol''**.
In pratica l'UPS APC-1400 indicherà al proprio demone quando la tensione viene a mancare, ma a questo **non seguirà alcuna azione**. Sono invece le impostazione dell'APC-3000 che determinano i tempi di shutdown.
I due demoni ''apcupsd'' sono consultabili via network sulle porte **TCP 3551** (default) e **3552** rispettivamente.
===== Avvio automatico dei due demoni =====
Si deve modificare lo script **''/etc/init.d/apcupsd''** relativamente alle azioni di start e stop, ecco un estratto:
CONFIG_FILES="/etc/apcupsd/*/apcupsd.conf"
case "$1" in
start)
rm -f /etc/apcupsd/powerfail
rm -f /etc/nologin
echo -n "Starting UPS monitoring:"
for conf in $CONFIG_FILES; do
subdir="$(dirname "$conf")"
instance="$(basename "$subdir")"
daemon --force /sbin/apcupsd -f "$conf"
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/apcupsd.$instance
done
echo
;;
stop)
echo -n "Shutting down UPS monitoring:"
for conf in $CONFIG_FILES; do
subdir="$(dirname "$conf")"
instance="$(basename "$subdir")"
killproc apcupsd
rm -f /var/lock/subsys/apcupsd.$instance
done
echo
rm -f $APCPID
;;
===== Interfaccia web =====
Si punta il browser su **''%%http://host/apcupsd/multimon.cgi%%''**, ovviamente deve essere attivo un server web. Per indicare che ci sono due demoni da monitorare, si modifica il file **''/etc/apcupsd/hosts.conf''** mettendo qualcosa del genere:
MONITOR 127.0.0.1 "APC-3000"
MONITOR 127.0.0.1:3552 "APC-1400"
===== Installazione di un client =====
Configurato un server Windows 2000 come client di ''apcupsd'', installato il pacchetto **winapcupsd-3.14.4.exe** e configurato il file ''C:\apcupsd\etc\apcupsd.conf'', in particolare:
UPSCABLE ether
UPSTYPE net
DEVICE 192.168.123.123:3552
BATTERYLEVEL -1
MINUTES -1
TIMEOUT 60
NISIP 127.0.0.1
NETTIME 10
Il client **ignora** le informazioni fornite dall'UPS su **livello della batteria** e **minuti rimasti** (stime), ma inizia uno **shutdown dopo 60 secondi** dal bkack-out. Il client controlla lo stato dell'UPS dal server ogni 10 secondi e condivide solo con se stesso queste informazioni (NISIP 127.0.0.1, necessario perché funzioni l'applicativo da systray).