28
Sous OpenBSD, après l’installation du package nut, en fonctionnant sur le câble USB avec le driver usbhid-ups, on obtient le message d’erreur :
Network UPS Tools: 0.29 USB communication driver - core 0.32 () No matching HID UPS found Driver failed to start (exit status=1)
Ce message met sur une fausse piste pour la résolution du problème, il s’agit en fait d’un simple problème de droits d’écriture sur les devices /dev/ugen*, il suffit de les rendre accessibles à l’utilisateur _ups pour que tout fonctionne.
A noter que l’entrée port du fichier de configuration /etc/nut/ups.conf doit absolument être renseignée pour que le daemon upsd se lance, mais qu’on peut y mettre n’importe quoi comme valeur (auto, toto, /dev/tty00, …), le driver se chargeant de trouver lui même les bon ports (/dev/ugen0.00 et /dev/ugen0.01 d’après la commande fstat -u _ups -n), ce qui donne la configuration ci-dessous, pour un onduleur MGE Ellipse 1500 :
[ellipse] driver=usbhid-ups # La valeur port est ignore par ce driver port=auto vendorid=0463 productid=ffff desc="MGE Ellipse 1500"
Instabilités du driver usbhid-ups
Elles se traduisent par des erreurs ‘Data stale‘, pour les corriger augmenter la valeur MAXAGE dans upsd.conf; si cette modification ne suffit pas, un script bien bourrin de relance du driver, en crontab, fait aussi l’affaire :
#!/usr/local/bin/bash TST=$(/usr/local/bin/upsc ellipse ups.status 2>/dev/null) if [ "x$TST" == "x" ]; then /usr/local/bin/upsdrvctl stop /usr/local/bin/upsdrvctl start logger -p local0.notice -t NUT "Relance daemon UPS" fi
Depuis la version 4.6 d’OpenBSD, ces erreurs semblent avoir disparues.