SAI "MGE Pulsar Ellipse 600" en Debian con NUT

Arco

Esta receta explica cómo instalar y configurar dicho SAI en un sistema Debian GNU/Linux o derivado para sacarle el máximo partido. Te recomiendo que leas al menos la introducción de Configuración y disfrute de un SAI para que tengas una idea de lo que se puede hacer y lo que necesitas, ya que no lo voy a repetir aquí.

[ACTUALIZADO] 20/03/2008
Recientes cambios en la versión 2.2.0 de NUT requieren modificaciones en los ficheros de configuración. La receta que estás leyendo utiliza los nuevos parámetros de configuración.

Introducción

En la receta que cito ahí arriba se hablaba de un SAI MGE Pulsar Extreme 1500C con interfaz RS-232. Ese es un SAI de gama media que ronda los 1.000€. Está bien para un servidor corporativo, pero es demasiado para un servidor doméstico, a menos que tu economía funcione realmente bien. Como ése no es mi caso, yo compré un MGE Pulsar Ellipse 600, que es un SAI más modesto (~60€), es el más barato de MGE que tiene conexión de datos (USB por cierto). Veremos ahora cómo configurarlo, dando servicio sólo a una máquina.

Como utiliza un driver USB necesitas un paquete adicional:

# apt-get install nut-usb

Driver

Crea un fichero /etc/nut/ups.conf y escribe:

[mysai]
     driver = usbhid-ups
     port = auto

Es muy importante que el fichero pueda ser leído por upsd y otros programas. Para ello, haz que el fichero pertenezca al grupo nut y tenga permisos de lectura,

$ chown root.nut /etc/nut/ups.conf
$ chmod g+r /etc/nut/ups.conf

Necesitas un Linux 2.6 o más nuevo para que funcione este driver. Puedes comprobar que lo detecta correctamente con:

# /lib/nut/usbhid-ups -a mysai
Network UPS Tools: 0.29 USB communication driver - core 0.32 (2.2.1-)
 
Using subdriver: MGE HID 1.01

Activar el servicio nut

Edita el fichero /etc/default/nut para que quede tal que:

START_UPSD=yes
START_UPSMON=yes

Configuración del servidor

Para usar el servicio únicamente desde la propia máquina que tiene el servidor (y el SAI) basta con que copies /usr/share/doc/nut/examples/upsd.conf.sample en /etc/nut/upsd.conf. Si quieres usarlo para avisar a otras máquinas debes modificarlo.

Usuarios

Copia el fichero /usr/share/doc/nut/examples/upsd.users.sample en /etc/nut/upsd.users y añade lo siguiente:

[admin]
        password = mypass
        allowfrom = localhost
        actions = SET
        instcmds = ALL
 
[monuser]
        password  = mypass
        allowfrom = localhost
        upsmon master

Cliente local

Copia el fichero /usr/share/doc/nut/examples/upsmon.conf.sample en /etc/nut/upsmon.conf y añade lo siguiente:

MONITOR mysai@localhost 1 monuser mypass master

Ahora reinicia el servicio:

# /etc/init.d/nut restart
Broadcast Message from nut@localhost
        (somewhere) at 15:59 …
 
Communications with UPS mysai@localhost established

Verificando la configuración

Al ejecutar upsc deberías ver algo similar a esto:

# upsc mysai@localhost
battery.charge: 100
battery.charge.low: 30
battery.runtime: 537
battery.type: PbAc
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.version: 2.2.1-
driver.version.data: MGE HID 1.01
driver.version.internal: 0.32
input.transfer.high: 264
input.transfer.low: 184
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
outlet.2.desc: PowerShare Outlet 2
output.frequency.nominal: 50
output.voltage: 230.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: -1
ups.delay.start: -10
ups.load: 21
ups.mfr: MGE UPS SYSTEMS
ups.model: Ellipse 600
ups.power.nominal: 600
ups.productid: ffff
ups.serial: AP9F35029
ups.status: OL CHRG
ups.vendorid: 0463

Simulación de un corte de luz

Con esto puedes ver que todo se cierra convenientemente y comprobar lo que ocurrirá en un corte de corriente:

# upscmd -c fsd

Es importante señalar que este comando deja conectado el SAI al terminar, es decir, todo lo que tengas conectado a sus salidas seguirá teniendo corriente.

Afinando el funcionamiento del SAI

Puedes modificar algunas variables del SAI, como por ejemplo, el tiempo que tarda en desconectarse después de recibir el comando shutdown. Para ver qué variables puedes modificar usa:

# upsrw mysai@localhost

Para modificar una variable usa algo como:

# upsrw -s battery.charge.low=20 -u admin -p mypass mysai@localhost

Invocando comandos

Mediante comandos NUT se pueden hacer operaciones de mantenimiento con el SAI, como desactivarlo o comprobar el nivel de la batería.

Puedes ver los comandos disponibles para tu driver con:

# upscmd -l mysai@localhost

Apagar el SAI bajo demanda

Resulta muy útil poder apagar (y dejar apagado) el SAI. De ese modo te garantizas que todo lo que tengas conectado al SAI queda completamente apagado, con el consiguiente ahorro energético. Para eso tienes que ejecutar el siguiente comando:

# upscmd -u admin -p mypass mysai shutdown.stayoff; shutdown -h +0

Referencias

AdjuntoTamaño
Pulsar600.jpeg9 KB

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de david.villa

bug con los permisos del dispositivo USB

http://kevin.deldycke.com/2011/05/mge-ellipse-750-ups-debian-squeeze/

No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.

mmmmm

mmmm, no me funciona, que raro.

Tengo un SAI parecido al tuyo. Primero apuntar, que si no me equivoco el modelo es eLLipse y no eCLipse. El modelo que yo estoy usando es el MGE Ellipse 750 USBS.

Si hago un lsusb me da como salida:
Bus 003 Device 002: ID 0463:ffff MGE UPS Systems UPS
Bus 003 Device 001: ID 0000:0000
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

Lo cual me indica que está correctamente conectado. Pero si hago
'/lib/nut/newhidups -a mysai' una vez configurado me dice:

Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.4)

No matching USB/HID UPS found

raro. No sé que hacer... Sad

Reiniciando la máquina ya

Reiniciando la máquina ya funciona. Puzzled

Recipe bug

Cuando dices que copie /usr/share/doc/nut/examples/upsd.conf en /etc/nut/upsd.users supongo que quieres decir que copie /usr/share/doc/nut/examples/upsd.conf en /etc/nut/upsd.conf ¿no?

Imagen de david.villa

Exacto

Arreglado, gracias

No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.