Pues con lo que este año me ahorro en alojamiento de la web me he comprado un UPS ó SAI (Sistema de Alimentación Ininterrumpida) Ellipse 600, vamos una batería que suministra electricidad al ordenador si falla la corriente, algo que en los 15 dias que lo llevo usando ya ha ocurrido dos veces y en ambos casos todo ha funcionado a la perfección.

SAI 600

El SAI en cuestión es un aparatito gris bastante pesado con un interruptor, 4 enchufes de salida y uno de entrada. Los 4 enchufes de salida tienen protección frente a sobrecargas en la red y 3 de ellos suministran en el momento en que el SAI comienza a funcionar en batería, sin corriente electrica. Como lo que me interesa proteger es la torre del ordenador ( y en concreto sus discos duros ) he conectado esta en solitario a una de las tomas de la bateria, el router a otra y todo el resto de periféricos (monitores, cámaras, altavoces, etc…) a la única salida no alimentaba por batería. De esta forma me aseguro que toda la capacidad de la batería en caso de corte de corriente es consumida exclusivamente por el ordenador propiamente dicho y el router,  y no un altavoz, monitor ó impresora consiguiendo exprimir al maximo el tiempo de aguante hasta que retorne la corriente electrica. En estas condiciones, un ordenador con una fuente de alimentación de 600W y con la batería a plena carga es capaz de mantener el ordenador funcionando durante 15 minutos, a partir de los cuales la carga llega al 30 % y el ordenador es apagado.
Oct 11 07:15:11 jardinero3 upsmon [26168]: UPS sai@localhost on battery
Oct 11 07:29:22 jardinero3 upsmon [26168]: UPS sai@localhost battery is low
Oct 11 07:29:22 jardinero3 upsmon [26168]: Executing automatic power-fail shutdown
Oct 11 07:29:22 jardinero3 upsmon [26168]: Auto logout and shutdown proceeding

En cuanto el SAI es conectado a la corriente comienza a cargar su batería tomandose una 30-40 horas en alcanzar el 100% de carga. Desde el primer momento pulsando el interruptor todo lo que esté conectado al SAI es perfectamente funcional.
Una vez el sistema operativo está en marcha un servicio (upsd) y dos daemons () se encarga de monitorizar periodicamente con el dispositivo e interrogarle basicamente sobre el estado de carga de la batería y sobre su modo de funcionamiento (conectado a la red electrica ó no). En el momento en que el SAI responde que está funcionando en modo batería (no hay corriente electrica ) se ejecuta un evento (normalmente una ventaniza en el escritorio, el envio de un mail, etc…). Si el SAI llega en modo batería a una carga del 30% se ejecuta otro evento que apaga el ordenador.SHUTDOWNCMD "/sbin/shutdown -h +0"
Nota: el encendido automático al volver la corriente se configura desde la BIOS de vuestra placa base.
Por supuesto todos estos parámetros son perfectamente configurables, pero conviene tener en cuenta no apurar la capacidad de la batería por debajo del 30% ya que en el caso de que retorne la corriente de forma temporal , la batería deberia disponer de cierto margen de seguridad para mantener el ordenador en pie el tiempo suficiente para volverlo a apagar de nuevo.

Atraves del servicio upsd podemos consultar en cualquier momento el estado de la bateria con upsc [nombre de tu dispositivo]battery.charge: 100
battery.charge.low: 30
battery.runtime: 1068
battery.type: PbAc
driver.name: usbhid-ups
driver.parameter.offdelay: 120
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.version: 2.2.0-
driver.version.data: MGE HID 1.0
driver.version.internal: 0.30
input.transfer.high: 264.0
input.transfer.low: 184.0
outlet.0.desc: Main Outlet
outlet.0.id: 1
outlet.0.switchable: no
outlet.1.desc: PowerShare Outlet 1
outlet.1.id: 2
outlet.1.status: on
outlet.1.switchable: no
output.voltage: 230.0
ups.beeper.status: enabled
ups.delay.shutdown: -1
ups.delay.start: -10
ups.load: 21
ups.mfr: MGE OPS SYSTEMS
ups.model: Ellipse 600
ups.power.nominal: 600
ups.productid: ffff
ups.serial: BD9J260PP
ups.status: OL CHRG
ups.vendorid: 0463

Instalar y configurar en OpenSuSe

Opté por este modelo por la potencia y por venir preparado para Linux (algo no especialmente dificil si tenemos en cuenta que estos dispositivos suelen ser muy usados en servidores, el 90% de los cuales usa GNU/Linux como sistema operativo). El dispositivo se puede conectar a través del puerto serie ó via USB (en mi caso), la batería es reemplazable y cuesta unos 110€. en PCBox.

Para instalar y configurar este modelo UPS Ellipse 600 en OpenSuSE añade en YAST el repositorio HTTP: opensource.mgeups.com/stable/suse
y a continuación instala: nut, mgeups-psp (y sus correspondientes dependencias si hiciera falta)

Los archivos de configuración se encuentran en /etc/ups. Desde estos archivos puedes configurar todos los parámetros de funcionamiento de la unidad UPS, empezando por el archivo /etc/ups.conf. Si como es mi caso lo conectas via USB, puedes introducir algo como:#asigna un nombre a la unidad
[sai]
#el driver que vas a utilizar, en este caso el genérico para unidades USB
driver = usbhid-ups
#puerto de conexión
port = auto
#descripción a tu gusto.
desc = "Elipse 600"

Guarda el archivo modificado y edita /etc/upsd.users, este archivo define los usuarios y el nivel de acceso al dispositivo de cada uno de ellos. Si deseas utilizar alguno de los usuarios preestablecidos solo cambia la contraseña ó bien crea un usuario nuevo a tu gusto[trebol-a]
password = 12345678
#la unidad ups admite la gestión remota via web, en mi caso no la estoy utlizando
allowfrom = localhost
#acciones autorizadas para este usuario
actions = SET
#instrucciones que el usuario puede ejecutar
instcmds = ALL
#nivel de acceso al monitor de UPS
upsmon master

Con los datos anteriormente utilizados edita /etc/upsmon.conf y asegurate de que la de MONITOR contiene los valores correctosMONITOR sai@localhost 1 trebol-a 12345678 master
Una vez finalizada la edición de estos ficheros solo falta asegurarse de que el usuario upsd pertenece al grupo uucp, de no ser así incorporalo a mano.$>groups upsd
daemon uucp

Una vez agregado el usuario upsd al grupo uucp puede iniciar los daemons/etc/init.d/upsd start
Starting NUT UPS drivers done
Starting NUT UPS server done
Starting NUT UPS monitor done

Y ya tienes tus sistema protegido contra cortes de luz. Solo faltaría añadir el servicio para su inicio con el sistema y personalizar los archivos de configuración para que envie/no envie mails de advertencias, dialogos de aviso, etc…