Page suivante Page précédenteTable des matières

9. Comment eteindre d'autres machines sur le même onduleur ?

Certaines personnes (y compris moi-même), ont plusieurs PC Linux connectés sur un onduleur. Un PC contrôle l'onduleur et doit éteindre les autres PC lorsque le secteur est coupé.

Nous supposons que les PC peuvent communiquer sur un réseau. Appelons le PC qui surveille l'onduleur le maître, et les autres PC, les esclaves.

Dans les temps anciens, cela nécessitait une amusante programmation.

Maintenant, la meilleure chose à faire semble être de trouver l'un des paquetages powerd-2.0.tar.gz ou upsd-1.0.tgz cités à la section Logiciels et de suivre les instructions. Les deux sont capables de fonctionner sur les esclaves dans un mode qui les connecte à un processus powerd ou upsd s'exécutant sur le maître pour lui demander l'état de l'onduleur. Certains des paquetages spécifiques pour APC semblent disposer aussi de cette fonctionnalité.

Néammoins, si votre réseau n'est pas sûr, vous pouvez être amené à souhaiter plus de sécurité dans ce montage, puisqu'il est possible de "pirater" un powerd esclave pour lui faire croire que le courant est coupé.

Une autre possibilité est d'utiliser le protocole SNMP (Simple Network Management Protocol - protocole simplifié d'administration de réseau). Le détail de l'utilisation de SNMP dépasse le cadre de ce document, pour ne pas dire que cela me dépasse tout court actuellement.

9.1 Méthode de l'état du port

Configurez un port sur le maître qui, lorsqu'on y est connecté, envoie soit "OK", soit "FAIL", soit "BATLOW" lorsque le courant est là, qu'il est coupé, ou que la batterie est faible, respectivement. Montez cela sur le port 13 (le port time) sur lequel vous pouvez faire un telnet et recevoir l'heure locale.

Montez sur les esclaves une version de powerd qui lit ce port plutôt que de contrôler une ligne série.

Je pense que c'est probablement la meilleure méthode, et j'ai l'intention d'upgrader mes systèmes pour l'utiliser.

9.2 Méthode d'émission en l'air

Identique à la section Méthode de l'état du port, mais par émission d'un message broadcast Ethernet signifiant l'événement.

Cela peut avoir des implications de sécurité, puisqu'il peut être {{spoofed}}

9.3 Méthode du pseudo-login

Configurez les pseudo-login sur les esclaves avec les noms powerok et powerfail, tous les deux avec le même UID. Faites de /etc/powerokscript le shell du user powerok, et de /etc/powerfailscript celui du user powerfail. Sur le maître, faites en sorte que le script /etc/powerokscript fasse un rlogin sur chaque esclave en tant que user powerok et que le script /etc/powerfailscript fasse un rlogin en tant que powerfail sur chaque esclave. Placez un fichier .rhosts sur chaque esclave dans le répertoire par défaut de powerok et powerfail pour autoriser le root du master à entrer comme users powerok et powerfail sur chaque esclave.

C'est le système que j'utilise actuellement. Malheureusement, j'ai quelques difficultés à faire que les login distants s'exécutent et rendent la main sans se bloquer. Il faudrait probablement que le script /etc/powerfailscript fasse les rsh sur les esclaves en tâche de fond pour lui éviter de bloquer. Néammoins, je n'ai jamais obtenu de login correct en tâche de fond. J'ai même essayé des combinaisons complexes comme faire se loger toto sur l'esclave. Tout ce que j'ai utilisé avait des problèmes et se trouvait bloqué par un entrée tty (ou sortie, je ne m'en rappelle plus).

En plus, cela peut créer des trous de sécurité.


Page suivante Page précédenteTable des matières