Tag Archives: monitorer onduleur
Monitorer son onduleur sous Linux
J'ai récemment acheté un onduleur Eaton Ellipse 750. Cet onduleur est manageable par USB.
Eaton est un fabricant très important dans la distribution d'onduleurs, notamment depuis le rachat de MGE.
Ce tutoriel s'applique donc également aux onduleurs Eaton, MGE et autres.
Nous allons donc voir comment gérer son onduleur directement sous son ordinateur USB.
Network UPS Tools (NUT)
Sous Linux, et plus précisément sous Ubuntu, c'est l'application Nut qui va nous permettre de configurer et monitorer notre onduleur.
Pour installer Nut, vous devez utiliser le gestionnaire de paquets:
apt-get install nut nut-usb
Une fois installé, il faut configurer certains paramètres via les commandes suivantes (adaptées les à votre configuration):
$ sed -i 's/MODE=none/MODE=standalone/g' /etc/nut/nut.conf
$ echo '
[MGE-Ellipse750]
driver = usbhid-ups
port = auto
desc = "MGE UPS Systems"
' >> /etc/nut/ups.conf
$ sed -i 's/# LISTEN 127\.0\.0\.1 3493/LISTEN 127\.0\.0\.1/g' /etc/nut/upsd.conf
$ echo '
[jhd]
password = password
upsmon master
' >> /etc/nut/upsd.users
$ sed -i 's/# NOTIFYCMD \/usr\/local\/ups\/bin\/notifyme/NOTIFYCMD \/sbin\/upssched/g' /etc/nut/upsmon.conf
$ echo '
MONITOR MGE-Ellipse750@localhost 1 jhd password master
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
' >> /etc/nut/upsmon.conf
$ sed -i 's/CMDSCRIPT \/upssched-cmd/CMDSCRIPT \/etc\/nut\/upssched-cmd/g' /etc/nut/upssched.conf
$ sed -i 's/# PIPEFN \/var\/run\/nut\/upssched\/upssched.pipe/PIPEFN \/var\/run\/nut\/upssched.pipe/g' /etc/nut/upssched.conf
$ sed -i 's/# LOCKFN \/var\/run\/nut\/upssched\/upssched.lock/LOCKFN \/var\/run\/nut\/upssched.lock/g' /etc/nut/upssched.conf
$ echo '
AT ONBATT * START-TIMER onbatt 30
AT ONLINE * CANCEL-TIMER onbatt
' >> /etc/nut/upssched.conf
$ echo '
#!/bin/sh
exit 0
' > /etc/nut/upssched-cmd
$ /etc/init.d/nut restart
Veuillez noter que pour trouver le driver de votre onduleur vous pouvez utiliser le site de Nut.
Vérifier la connection de Nut à l'onduleur
Pour vérifier que Nut soit bien connecté à votre onduleur et qu'il fonctionne parfaitement, vous pouvez exécuter la commande suivante:
upsc MGE-Ellipse750@localhost
Si cette commande vous retourne quelque chose comme çà c'est qu'il y a un problème de connection:
upsmon[10773]: Poll UPS [MGE-Ellipse750@127.0.0.1] failed - Driver not connected
Il faudra alors lancer le driver de Nut en mode Debug afin de diagnostiquer le problème:
/lib/nut/usbhid-ups -DDD -a MGE-Ellipse750
Ce qui retournera:
Network UPS Tools - Generic HID driver 0.34 (2.4.3)
USB communication driver 0.31
0.000000 debug level is '3'
0.013911 upsdrv_initups...
0.189541 Checking device (0463/FFFF) (005/003)
0.189705 - VendorID: 0463
0.189741 - ProductID: ffff
0.189767 - Manufacturer: unknown
0.189794 - Product: unknown
0.189819 - Serial Number: unknown
0.189842 - Bus: 005
0.189862 Trying to match device
0.189906 Device matches
0.189954 failed to claim USB device: could not claim interface 0: Operation not permitted
0.189995 failed to detach kernel driver from USB device: could not detach kernel driver from interface 0: Operation not permitted
0.190033 failed to claim USB device: could not claim interface 0: Operation not permitted
0.190070 failed to detach kernel driver from USB device: could not detach kernel driver from interface 0: Operation not permitted
0.190108 failed to claim USB device: could not claim interface 0: Operation not permitted
0.190145 failed to detach kernel driver from USB device: could not detach kernel driver from interface 0: Operation not permitted
0.190181 failed to claim USB device: could not claim interface 0: Operation not permitted
0.190217 failed to detach kernel driver from USB device: could not detach kernel driver from interface 0: Operation not permitted
0.190252 Can't claim USB device [0463:ffff]: could not detach kernel driver from interface 0: Operation not permitted
Pour plus de précision, il faut lancer la commande en utilisant le user root:
/lib/nut/usbhid-ups -DDD -u root -a MGE-Ellipse750
Ce qui retournera:
Network UPS Tools - Generic HID driver 0.34 (2.4.3)
USB communication driver 0.31
0.000000 debug level is '3'
0.001678 upsdrv_initups...
0.172877 Checking device (0463/FFFF) (005/003)
1.112408 - VendorID: 0463
1.112464 - ProductID: ffff
1.112489 - Manufacturer: MGE OPS SYSTEMS
1.112516 - Product: ELLIPSE
1.112542 - Serial Number: BDCJ3800Q
1.112569 - Bus: 005
1.112595 Trying to match device
1.112647 Device matches
1.112726 failed to claim USB device: could not claim interface 0: Device or resource busy
1.113239 detached kernel driver from USB device...
1.251394 HID descriptor, method 1: (9 bytes) => 09 21 00 01 21 01 22 01 03
1.251460 HID descriptor, method 2: (9 bytes) => 09 21 00 01 21 01 22 01 03
1.251491 HID descriptor length 769
1.351379 Report Descriptor size = 769
1.351456 Report Descriptor: (769 bytes) => 05 84 09 04 a1 01 09 24 a1 00 09 02 a1 00
1.351509 55 00 65 00 85 01 75 01 95 05 15 00 25 01 05 85 09 d0 09 44 09 45 09 42 0b
(...)
On voit donc que c'est un problème de droit d'accès et de permissions. Pour résoudre le problème, il suffira de donner les droits nécessaires:
chmod 0666 /dev/bus/usb/005/003
chown :nut /dev/bus/usb/005/003
Notez que 005 correspond au Bus et 003 correspond au device de connection USB de votre onduleur.
Pour trouver le bus et le device USB, utilisez la commande "lsusb".





ZeM.fr est un blog que j'ai lancé afin de stocker les informations qui me semblent importantes.