UPS APC – integriamolo con Ubuntu
ATTENZIONE: Per l’integrazione con Unity su Ubuntu si consiglia di seguire questa
Dopo anni di onorato servizio il mio UPS Riello ha tirato le cuoia.
La sostituzione delle batterie è sempre antieconomica in queste apparecchiature di fascia medio bassa nel senso che le batterie nuove costano quasi come un nuovo apparecchio e, tra l’altro, sentivo il bisogno di maggiore protezione contro gli sbalzi continui che l’Acea ha deciso di donare alla mia linea elettrica.
Abitando a Roma il clima “monsonico” con temporali estivi (ma anche invernali , autunnali e primaverili) mi ha spinto a fare un investimento abbastanza consistente alla luce anche del prossimo e necessario aggiornamento dell’ hardware.
Un breve accenno al perchè è importante un UPS:
UPS Uninterruptible Power Supply ha come primo fondamentale scopo quello di salvaguardare il lavoro che stiamo svolgendo sul PC;
Immagina di stare lavorando a un progetto e, improvvisamente, va via la corrente: ci accorgiamo che dall’ultimo salvataggio che abbiamo fatto ne è passato di tempo (e di modifiche).
L’UPS ci permette di salvare il nostro lavoro e procedere ad un regolare spegnimento dell’apparecchiatura.
Cosa sarebbe se un’improvviso sbalzo di corrente ci bruciasse qualche componente del nostro amato PC?
anche in questo caso l’UPS ci protegge da questi eventi garantendo una buona copertura e una stabilizzazione della corrente di alimentazione della nostra macchina.
L’apparecchio che ho preso in considerazione ha 4 uscite stabilizzate e con il supporto della batteria a cui collegare l’unità centrale, il monitor e altre eventuali periferiche tipo un HD esterno a cui vogliamo garantire l’intervento della batteria per tamponare un improvvisa interruzione di corrente.
In più ha altre 2 uscite stabilizzate a cui collegare le altre periferiche tipo router, casse audio, stampante.
Attenzione: è sconsigliato collegare una stampante laser alla presa che utilizza la batteria tampone in caso di distacco della linea elettrica
La protezione linea dati permette di collegare sia il doppino telefonico RJ11 sia il cavo di rete RJ45
Veniamo a noi: l’interfaccia USB o seriale permette allo UPS di “dialogare” con il nostro PC fornendoci una serie di informazioni utili.
Il tutto avviene tramite l’interfaccia del programma APCUPSD che permette, tra le altre cose, di programmare lo spegnimento del pc al verificarsi di determinate condizioni (es: quando la carica residua della batteria raggiunge il 5% -impostazione di default)
Nel manuale trovate tutte le apparecchiature supportate e il tipo di collegamento consentito.
Quasi completo il supporto per le piattaforme linux:
LINUX
- RedHat
- SuSE
- Mandriva/Mandrake
- Debian
- Slackware
- Engarde
- Yellowdog
- Gentoo
oltre a supportare anche windows e mac
Come da titolo ho testato la procedura su Ubuntu Karmic Koala 9.10 con questo kernel: 2.6.31-14-generic
Come prima cosa dobbiamo installare i pacchetti necessari:
sudo apt-get install apcupsd apcupsd-cgi apcupsd-doc
cgi se vogliamo anche l’interfaccia web e il doc per la documentazione
A questo punto possiamo collegare l’UPS al PC tramite il cavo USB o seriale in dotazione
Poi andiamo a modificare il file di configurazione
sudo gedit /etc/apcupsd/apcupsd.conf
e modifichiamo le seguenti voci come indicato
Collegamento USB
UPSCABLE usb
UPSTYPE usb
DEVICE
LOCKFILE /var/lock
UPSCLASS standalone
UPSMODE disable
Collegamento con cavo seriale
UPSCABLE smart
UPSTYPE smartups
DEVICE /dev/ttyS0
LOCKFILE /var/lock
UPSCLASS standalone
UPSMODE disable
inoltre dobbiamo andare ad applicare le modifiche in
sudo gedit /etc/default/apcupsd
andando a inserire yes in corrispondenza di ISCONFIGURED
# Defaults for apcupsd initscript
# Apcupsd-devel internal configuration
APCACCESS=/sbin/apcaccess
ISCONFIGURED=yes
poi siamo pronti a far partire il demone con
/etc/init.d/apcupsd start
a questo punto possiamo verificare in terminale il riconoscimento del nostro UPS con il comando
apcaccess status
e ci dice tutto sul nostro APC
fabrizio@fabrizio-desktop:~$ apcaccess status
APC : 001,043,1065
DATE : Wed Nov 18 18:04:56 CET 2009
HOSTNAME : fabrizio-desktop
VERSION : 3.14.6 (16 May 2009) debian
UPSNAME : fabrizio-desktop
CABLE : USB Cable
MODEL : Back-UPS BR 800
UPSMODE : Stand Alone
STARTTIME: Wed Nov 18 08:37:48 CET 2009
STATUS : ONLINE
LINEV : 228.0 Volts
LOADPCT : 22.0 Percent Load Capacity
BCHARGE : 100.0 Percent
TIMELEFT : 36.2 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
OUTPUTV : 230.0 Volts
SENSE : Medium
DWAKE : 000 Seconds
DSHUTD : 000 Seconds
LOTRANS : 194.0 Volts
HITRANS : 264.0 Volts
RETPCT : 000.0 Percent
ITEMP : 29.2 C Internal
ALARMDEL : Always
BATTV : 27.4 Volts
LINEFREQ : 50.0 Hz
LASTXFER : Low line voltage
NUMXFERS : 0
TONBATT : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STATFLAG : 0×07000008 Status Flag
SERIALNO : 3B0845X50233
BATTDATE : 2001-09-25
NOMOUTV : 230 Volts
NOMINV : 230 Volts
NOMBATTV : 24.0 Volts
NOMPOWER : 540 Watts
FIRMWARE : 9.o4 .I USB FW:o4
APCMODEL : Back-UPS BR 800
END APC : Wed Nov 18 18:05:40 CET 2009
in particolare:
LINEV: ci dice il voltaggio della nostra rete elettrica e deve essere un valore appropriato per la nostra apparecchiatura (Europa 220V)
BATTV: il valore deve essere vicino ai 24V con un margine di un +/- 5 Volt
STATUS: indica lo stato dello UPS e normalmente deve essere ONLINE
Possiamo, inoltre, verificare lo stato dello UPS con il comando
apcaccess
che produce il seguente output
fabrizio@fabrizio-desktop:~$ apcaccess
APC : 001,043,1065
DATE : Wed Nov 18 18:14:54 CET 2009
HOSTNAME : fabrizio-desktop
VERSION : 3.14.6 (16 May 2009) debian
UPSNAME : fabrizio-desktop
CABLE : USB Cable
MODEL : Back-UPS BR 800
UPSMODE : Stand Alone
STARTTIME: Wed Nov 18 08:37:48 CET 2009
STATUS : ONLINE
LINEV : 230.0 Volts
LOADPCT : 23.0 Percent Load Capacity
BCHARGE : 100.0 Percent
TIMELEFT : 35.4 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
OUTPUTV : 230.0 Volts
SENSE : Medium
DWAKE : 000 Seconds
DSHUTD : 000 Seconds
LOTRANS : 194.0 Volts
HITRANS : 264.0 Volts
RETPCT : 000.0 Percent
ITEMP : 29.2 C Internal
ALARMDEL : Always
BATTV : 27.4 Volts
LINEFREQ : 50.0 Hz
LASTXFER : Low line voltage
NUMXFERS : 0
TONBATT : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STATFLAG : 0×07000008 Status Flag
SERIALNO : 3B0845X50233
BATTDATE : 2001-09-25
NOMOUTV : 230 Volts
NOMINV : 230 Volts
NOMBATTV : 24.0 Volts
NOMPOWER : 540 Watts
FIRMWARE : 9.o4 .I USB FW:o4
APCMODEL : Back-UPS BR 800
END APC : Wed Nov 18 18:15:27 CET 2009
Per monitorare il tutto tramite interfaccia grafica possiamo utilizzare gapcmon
sudo apt-get install gapcmon
che ci presenta le seguenti schermate molto dettagliate:
Volt della rete elettrica percentuale di carica della batteria e carico delle apparecchiature collegate rispetto alla capacità dell’ UPS

preferenze:

impostazioni del grafico:

Grafico

Informazioni dettagliate

Cronologia eventi

e per finire

Attenzione alle icone
a me è capitato che, al posto delle icone del programma nell’area di notifica, mi uscissero due barrette grigie difficilmente cliccabili
La comodità delle icone è che permette di aprire il programma e lasciarlo aperto nell’area di notifica riducendolo a icona
lanciando il programma da terminale mi usciva questo errore:
fabrizio@fabrizio-desktop:~$ gapcmon
** Message: gapc_util_load_icons(Unable to find icons) emsg=–load failed!(gapcmon:4352): GdkPixbuf-CRITICAL **: gdk_pixbuf_scale_simple: assertion `GDK_IS_PIXBUF (src)’ failed
(gapcmon:4352): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)’ failed
mentre lanciando direttamente il programma da /usr/share/icons/gapcmon con
fabrizio@fabrizio-desktop:/usr/share/icons/gapcmon$ gapcmon
tutto mi funzionava perfettamente.
La soluzione è quella di creare dei link in /usr/share/pixmaps alle icone contenute in /usr/share/icons/gapcmon oppure, ancora più comodo, creare una cartella gapcmon in
/usr/share/pixmaps e copiarci dentro le icone contenute in /usr/share/icons/gapcmon
Tutto qui





Buongiorno, ho seguito attentamente tutti i passaggi riportati nella sua guida, ma nel momento in cui digito il comando apcaccess ottengo il seguente errore:
Error contacting apcupsd @ localhost:3551: Connection refused
cosa vuol dire? cosa c’è che no va?
Grazie
ciao, prova a riavviare il demone con
sudo /etc/init.d/apcupsd restart
ciao,devo acquistare un ups evolevo sapere se potevo trovare una lista di prodotti compatibili con linux( io sono su ubuntu karmic) oltre a gli apc.
vorrei collegarci il router,due pc(un solo monitor)
ciao
Ciao, c’è questa http://www.networkupstools.org/compat/stable.html che sembra aggiornata al 2010 (ma non riguarda apcupsd ma è un altro progetto)
questa http://tldp.org/HOWTO/UPS-HOWTO/index.html (ma si ferma al 2007)
la Eaton http://www.eaton.com/EatonCom/index.htm tempo fa aveva dichiarato di voler rendere compatibili tutti i suoi prodotti con linux
ci sarà senz’altro molto altro di compatibile
grazie, ora ci do uno sguardo