OBSD4* : wiki

NUT : Utilisation d’un onduleur

Si vous avez un serveur qui fonctionne H24, vous ne souhaitez pas qu’il s’éteigne de manière impromptue a cause d’une (micro) coupure d’alimentation électrique. Cela peu d’une part corrompre des données, mais aussi endommager le matériel en cas de surtension. Dans certaine partie du monde ou l’alimentation n’est pas fiable et de bonne qualité (sur/sous-tension) cela devient vite indispensable. Pour palier a ces cas de figure des systèmes UPS sont disponibles. En plus d’offrir une protection efficace en cas de surtension, certain embarque une batterie qui permet de palier à une défaillance temporaire de l’alimentation électrique. NUT est le logiciel de gestion de ces unités le plus populaire. Cependant pour le matériel de marque APC il existe un client plus adapté (apcmon) qui ne sera pas traité ici.

Tout d’abord un peu de vocabulaire :

  • UPS : Uninterruptible Power Supplies, que l’on pourrait traduire par « systèmes d’alimentation sans interruption », souvent nommé « onduleur »
  • NUT : Network UPS Tool, que l’on pourrait traduire par « Outil réseau UPS ». Il comprend le programme client et serveur. Cette architecture permet d’éteindre de manière contrôlée tout un ensemble de machine en cas de défaillance imminente de l’alimentation.

Installation

Pour cela une simple petite ligne de commande suffit :

#pkg_add nut

Vous verrez qu’un nouvel utilisateur et groupe « _ups » est créé sur le système. C’est sous cet utilisateur que le programme va s’exécuter par défaut.

Droits d’accès

Avant d’essayer de configurer le logiciel il faut s’assurer qu’il a bien les droits d’accès aux ports USB ou au port série si vous avez un matériel un peu ancien. Plusieurs solutions s’offrent a vous :

  1. mettre NUT dans le groupe « wheel »
  2. utiliser le groupe « daemon » y mettre NUT et changer les droits des «/dev/[usb|ugen]*»
  3. créer un groupe « usb » y mettre NUT et changer les droits des «/dev/[usb|ugen]*»

Sachant qu’il est préférable de bien séparer les droits pour ne pas affaiblir la sécurité du système, c’est la dernière solution qui est traité ici. Pour cela il faut faire les manipulations suivantes :

  • Créer un nouveau groupe dédié aux ports USB. Le numéro 118 a été choisi car suit le numéro du groupe « dialer », mais vous pouvez en choisir un autre tout à fait arbitrairement.
#groupadd -g 118 usb
  • Ajouter le groupe « _ups » a ce nouveau groupe
# usermod -G usb _ups
  • Changer le groupe des périphériques concernés
# chgrp usb /dev/usb*
# chgrp usb /dev/ugen*

Configuration

Vu que NUT n’est pas exclusif a OpenBSD il existe de nombreux tutoriel sur le net expliquant en détail sa configuration. Le site de NUT en liste quelques-uns. Par exemple :