Association Bordelaise des Utilisateurs de Logiciels libres
Configurer un onduleur Unitek alpha 500
Tutoriel pour configurer un onduleur Unitek alpha 500 ic port série (drivrer=megatec), et un onduleur MGE Ellipse 600 port série (driver=mge-shut) sous Kubuntu et Mandriva 2008.
Kubuntu
Système d’exploitation :
- Kubuntu 7.10 Gutsy Gibbon (kubuntu 7.10.desktop.i386.iso.
UPS :
- onduleur Unitek alpha 500 ic commandé par le port série.
On suit les manuels suivants :
Installation de nut :
Sous debian (kubuntu) :
- Se mettre en root :
- sudo -s
- "mot de passe"
On tape toutes les commandes, et à la fin, ne pas oublier de faire exit.
# apt-get install nut
Droits sur les fichiers :
# chmod 0600 /dev/ttyS0
# chown nut:nut /dev/ttyS0
# addgroup nut dialout
La dernière ligne permet à nut de faire partie de dialout, qui est autorisé par udev à acceder à ttyS0.
Remarque : ttyS0 est un port série (com1)( S0 c’est S ’’zéro’’)
Lignes de commande élémentaires à connaître :
On va utiliser vim qui est un éditeur de texte. On utilise les flèches pour se déplacer et pour insérer du texte on tape i ; pour sortir du mode insertion, échap ; pour sortir sans sauvegarder :q (2 point et q) ; pour sauvegarder, :wq ! (le ! permet de forcer les droits).
Pour se déplacer d’un répertoire à l’autre : commande cd , pour voir les fichiers dans les répertoires : commande ls.
Editer les fichiers de configuration :
# vim /etc/default/nut
Modifier le contenu de façon à obtenir les scripts suivants :
# start upsd
START_UPSD=yes
# start upsmon
START_UPSMON=yes
On sauvegarde les modifications et on quitte...
:wq !
Remarque : dans le paquet debian 2.2.0, le répertoire /etc/nut est vide, il faut donc récupérer les fichiers texte de configuration contenus dans le repertoire /usr/share/doc/nut/examples/
(4 fichiers : ups.conf ; upsd.conf ; upsmon.conf ; upsd.users).
On fait alors un copier-coller : on va chercher les fichiers dans le répertoire doc, et les coller dans le répertoire nut :
# cp /usr/share/doc/nut/examples/*.conf /etc/nut
# cp /usr/share/doc/nut/examples/*.users /etc/nut
On peut aussi aller dans les fichiers-exemple avec le gestionnaire de fichier et souris, les ouvrir avec kate sélectionner le texte et le copier dans un traitement de texte kate et enregistrer dans un répertoire de /home (/home/"compte utilisateur"/ : question de droits). On déplace ces fichiers à la ligne de commande (impossible de faire autrement question de droits sur les fichiers),
On édite le fichier ups.conf :
vim /etc/nut/ups.conf
Le contenu doit ressembler à ceci :
[myups]
driver = megatec
port = /dev/ttyS0
desc = "Mon serveur"
Remarque : ici le pilote est megatec il faut aller sur le site suivant (http://www.networkupstools.org/) pour vérifier que son UPS est bien dans la liste de Nut. On peut ouvrir le fichier driver.list dans : /usr/share/nut/driver.list
(de cette façon on est sûr que le pilote correspond aux paquets installés).
Sauvegarder et quitter le fichier ups.conf édité précédemment.
Test de connexion et de reconnaissance de l’UPS :
# upsdrvctl start
On doit avoir une sortie similaire à ceci :
Network UPS Tools - UPS driver controller 2.2.0
Detected Unitel 500 on /dev/ttyS0
Broadcast Message from nut@xxxxxxxxx (somewhere) at 15:09 ...
Communications with UPS serveurweb@localhost established
Lorsque ceci est visible, c’est ok.
Paramètrer les droits d’accès à l’onduleur :
Pour cela, on édite le fichier upsd.conf
# vim /etc/nut/upsd.conf
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACCEPT localhost
REJECT all
Dans le cas présent j’autorise (ACCEPT) le localhost et j’interdis (REJECT ALL) tout le reste.
On sauvegarde et on quitte le fichier upsd.conf.
On définit les droits sur les différents fichiers de configuration :
on se place dans nut (/etc/nut)
# chown root:nut upsd.conf upsd.users
# chmod 0640 upsd.conf upsd.users
Il faut maintenant définir un utilisateur qui sera à même de pouvoir accéder au démon.
On édite le fichier upsd.users :
# vim /etc/nut/upsd.users
[jeanbernard]
password = demo
allowfrom = localhost
upsmon master
NOTE : upsmon master indique que l’utilisateur a le droit de se connecteur sur le serveur maître pour contrôler l’onduleur.
Dernier fichier de configuration à éditer /etc/nut/upsmon.conf
Ce dernier contient l’utilisateur/mot de passe qui sera utilisé pour la surveillance de l’onduleur ainsi que la commande à exécuter lorsque l’onduleur devra éteindre la machine.
# vim /etc/nut/upsmon.conf
On doit avoir un contenu similaire à ceci :
MONITOR myups@localhost 1 jeanbernard demo master
SHUTDOWNCMD "/sbin/shutdown -h now"
On sauvegarde et on quitte upsmon.conf.
On Lance Nut
# /etc/init.d/nut start
Pour vérifier qu’il n’y a pas d’erreur, on peut jeter un oeil dans /var/log/daemon.log.
Si tout est OK, vous pouvez lancer la commande pour vérifier l’état de
l’onduleur :
# upsc myups@localhost
En sortie, on doit avoir quelques choses dans ce goût-là :
battery.charge: 50.0
battery.voltage: 13.4
driver.name: fentonups
driver.parameter.port: /dev/ttyS0
driver.version: 2.0.4
driver.version.internal: 1.22
input.frequency: 50.0
input.transfer.high: 288
input.transfer.low: 172
input.voltage: 227.9
output.voltage: 227.9
ups.load: 062
ups.mfr: UNITEK
ups.model: Alpha 500 iC
ups.status: OL
NOTE : si on ne souhaite qu’une information particulière ; ajouter à la commande l’argument suivant :
# upsc serveurweb@localhost battery.charge
En sortie :
100 (indique le taux de chargement de la batterie)
Voilà, à présent notre onduleur est connecté et opérationnel depuis notre machine.
NOTE : pour chaque évènement concernant l’onduleur, il est possible de lui faire réaliser une action... voir man upsmon et upsmon.conf pour plus de détails.
Test ’’à blanc’’ (sans avoir à vider la batterie) :
Fonctionnement du driver : le driver teste en permanence la batterie et envoie l’ordre d’arrêter le pc (shutdown -h now, arrêter maintenant) quand la batterie atteint un certain taux de charge. Au début il ne se passe rien et lorsque la batterie est déchargée à x % le pc s’arrête ’’proprement’’.
On lance la commande :
upsmon -c fsd
le pc doit s’arrêter ’’gentiment’’ au bout de quelques secondes.
Remarque importante : Il faut penser à éteindre puis à redémarrer l’onduleur après l’arrêt du système lors d’une panne de courant. Sinon, il n’y a pas assez de courant sur la batterie pour permettre le boot de la machine.
MANDRIVA 2008
Système d’exploitation :
Mandriva2008 powerpack i586 32 bits.
UPS :
onduleur Unitek alpha 500 ic commandé par le port série.
On suit les manuels suivants :
Installation de l’UPS :
On va dans configurer votre ordinateur > matériel > configurer un onduleur :
ajouter manuellement un onduleur > on laisse myups, le pilote megatec (pour unitec alpha 500 ic > on rajoute le port de sortie : ttyS0 (pour sortie série)
(il faut que nut soit installé)
Droits sur les fichiers (en root)
faire : su
"mot de passe root"
# chmod 0600 /dev/ttyS0
Remarque : ttyS0 est un port série (com1)( SO c’est S ’’zéro’’).
Lignes de commande élémentaires à connaître :
On va utiliser vim qui est un éditeur de texte. On utilise les flèches pour se déplacer et pour insérer du texte on tape i ; pour sortir du mode insertion ; échap ; pour sortir sans sauvegarder :q (2 point et q) ; pour sauvegarder ; :wq ! (le ! permet de forcer les droits).
Cp : pour copier et renommer : cp "Nomfichier" "NouveauNom".
Cd pour ce déplacer d’un répertoire à l’autre.
Ls pour voir les fichiers dans les répertoires.
Editer les fichiers de configuration (en root) :
On doit avoir 4 fichiers : ups.conf ; upsd.conf ; upsmon.conf ; upsd.users dans le répertoire /ups
Remarque : on remarque qu’il manque le fichier upsmon.conf ; on va le constituer en copiant et en renommant le fichier upsmon.conf.sample
on se place dans le répertoire /etc/ups
su "mot de passe root"
# cd /etc/ups/
# cp upsmon.conf.sample upsmon.conf
– On édite le fichier ups.conf
root@localhost ups#vim ups.conf
Le contenu doit ressembler à ceci :
[myups]
driver = megatec
port = /dev/ttyS0
desc = "Mon serveur"
:wq ! pour sortir de vim et sauvegarder.
Remarque : ici le pilote est megatec il faut aller sur le site suivant (http://www.networkupstools.org/) pour vérifier que son UPS est bien dans la liste de Nut.
Paramétrer les droits d’accès à l’onduleur :
Pour cela, on édite le fichier upsd.conf
# vim upsd.conf
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACCEPT localhost
REJECT all
Dans le cas présent j’autorise (ACCEPT) le localhost et j’interdis (REJECT ALL) tout le reste.
On sauvegarde et on quitte le fichier upsd.conf.
On définit les droits sur les différents fichiers de configuration (il faut se trouver dans le répertoire nut) :
# chown root:nut upsd.conf upsd.users
# chmod 0640 upsd.conf upsd.users
Il faut définir un utilisateur qui sera à même de pouvoir accéder au démon.
On édite le fichier upsd.users :
# vim upsd.users
[subrenat]
password = demo
allowfrom = localhost
upsmon master
NOTE : upsmon master indique que l’utilisateur a le droit de se connecter sur le serveur maître pour contrôler l’onduleur.
Dernier fichier de configuration à éditer /etc/nut/upsmon.conf
Ce dernier contient l’utilisateur/mot de passe qui sera utilisé pour la surveillance de l’onduleur ainsi que la commande à exécuter lorsque l’onduleur devra éteindre la machine...
# vim upsmon.conf
On doit avoir un contenu similaire à ceci :
MONITOR myups@localhost 1 jeanbernard demo master
SHUTDOWNCMD "/sbin/shutdown -h now"
On sauvegarde et on quitte upsmon.conf.
:wq !
et on redémarre le PC
Test ’’à blanc’’ (sans avoir à vider la batterie) :
Fonctionnement du driver : le driver teste en permanence la batterie et envoie l’ordre d’arrêter le PC (shutdown -h now, arrêter maintenant) quand la batterie a atteint un certain seuil de taux de charge. Au début il ne se passe donc rien mais lorsque la batterie est déchargée à x % le PC s’arrête ’’proprement’’.
On lance la commande :
# upsmon -c fsd
Le pc doit s’arrêter ’’gentiment’’ au bout de quelques secondes.
Remarque importante :
Il faut penser à éteindre puis à redémarrer l’onduleur après l’arrêt du système lors d’une panne de courant. Sinon, il n’y a pas assez de courant sur la batterie pour permettre le boot de la machine.