Login
Login-Name Passwort


 
Newsletter
Di, 13. Dezember 2016, 14:00

Unterbrechungsfreie Stromversorgungen konfigurieren

Wer eine unterbrechungsfreie Stromversorgung besitzt, nutzt meist die freien »Network UPS Tools«, um mit ihnen zu kommunizieren. Mit diesen Werkzeugen kann man unter anderem die Daten der Stromversorgung auslesen und zum Teil auch ändern.

Smart UPS mit zu ersetzender Batterie

Hans-Joachim Baader

Smart UPS mit zu ersetzender Batterie

Die Network UPS Tools dienen zur Kommunikation mit stromliefernden oder -verteilenden Geräten, darunter auch unterbrechungsfreie Stromversorgungen (USVs), wovon die Software ihren Namen ableitet (UPS = Uninterruptible Power Supply). Die wichtigste Anwendung ist dabei wiederum, ein Signal von der USV zu erhalten, wenn die Stromversorgung gestört ist, um angeschlossene Rechner kontrolliert herunterzufahren, bevor der Akku der USV leer ist. Zur Kommunikation besitzt die USV oft einen USB-Anschluss, ältere Modelle oft einen seriellen. In moderne Rechner muss man oft eine separate PCI-Karte mit seriellen Ports einbauen, um überhaupt noch mit älteren USVs kommunizieren zu können.

Der Fokus dieses Tipps soll aber nicht auf der Konfiguration von NUT liegen, diese wird als gegeben vorausgesetzt. Vielmehr soll hier aufgezeigt werden, dass auch USVs eine Firmware besitzt, und diese enthält eine Reihe von Variablen, die ausgelesen und zum Teil auch geändert werden können. Im folgenden wird als Beispiel eine sogenannte Smart UPS genutzt, der wir den Namen »smarty« gegeben haben.

Zunächst kann man sich einmal über die verfügbaren Variablen (und den aktuellen Zustand der USV) informieren. Dazu dient das Kommando upsc. Es ist kein Passwort nötig, und der Aufruf

upsc smarty | less

liefert eine mehr oder weniger lange Liste von Variablen. Die meisten davon dürften selbsterklärend sein. Von besonderem Interesse ist unter anderem die Zeile

ups.id: UPS_IDEN

wobei UPS_IDEN der vom Hersteller voreingestellte Name der USV ist, der natürlich je nach Hersteller differieren kann. Diesen Namen können wir ändern, und zwar mit dem Kommando upsrw. Es ist sinnvoll, diesen Namen in Einklang mit dem in der NUT-Konfiguration festgelegten Namen zu bringen.

Zunächst aber können wir uns mit upsrw eine Liste aller änderbaren Variablen ausgeben lassen. Dies ist eine Teilmenge der insgesamt vorhandenen Variablen, allerdings wird jede Variable ausführlich mit ihrem Zweck, Typ und erlaubten Werten beschrieben. Bei Strings wird zum Beispiel die Maximallänge angegeben, bei Aufzählungstypen die erlaubten und die aktuell eingestellten Optionen. Der Aufruf dafür ist einfach

upsrw smarty | less

und ein Ausschnitt aus der Antwort sieht ungefähr so aus:

[ups.id]
UPS system identifier
Type: STRING
Maximum length: 8
Value: UPS_IDEN

[ups.test.interval]
Interval between self tests (seconds)
Type: ENUM
Option: "1209600" SELECTED
Option: "604800"
Option: "0"

Um die Variable ups.id auf den Wert smarty zu setzen, ist die Eingabe des konfigurierten Passworts nötig. Benutzername und Passwort werden von upsrw am Prompt abgefragt. Wenn man das verhindern möchte, übergibt man sie als Argumente beim Aufruf:

upsrw -s ups.id=smarty -u username -p passwort smarty

Ein erneuter Aufruf von upsc oder upsrw überzeugt uns davon, dass die Variable tatsächlich geändert wurde. Diese Änderung ist dauerhaft.

Zumindest eine weitere Variable ist interessant: battery.date. Es lassen sich zwar noch einige andere Variablen ändern, aber diese lassen sich über NUT konfigurieren und müssen daher nicht direkt bearbeitet werden. battery.date hingegen lässt sich nur direkt setzen. Es empfiehlt sich, darin das Datum des letzten Batteriewechsels einzutragen. Die Lebensdauer der Batterien ist leider begrenzt, wozu sicher auch die Temperaturen von durchschnittlich über 30° in der USV beitragen. Oft halten die Bleibatterien nur zwei Jahre durch, bei niedrigeren Temperaturen wäre sicherlich mehr drin.

Das Format der Variablen battery.date ist frei wählbar, es könnte beispielsweise als Vorgabe 02/21/08 eingetragen sein, oder vielleicht auch gar nichts. Im Beispiel ist die Länge dieser String-Variablen auf 8 Zeichen begrenzt. Sinnvoll erscheint daher eine Formatierung mit vierstelliger Jahreszahl und jeweils zweistelliger Monats- und Tagesangabe, alles direkt hintereinander. Auch hier müssen wieder Name und Passwort angegeben werden:

upsrw -s battery.date=20161108 -u username -p passwort smarty

Die lakonische Antwort des Programms lautet OK. Wie man danach überprüfen kann, wurde das Datum tatsächlich eingetragen:

battery.date: 20161108

Das Setzen der USV-Variablen mag keine große Sache sein, aber spätestens, wenn man mehr als eine USV besitzt, hilft es dabei, die Übersicht zu behalten.

  • Das Werk darf vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden, Abwandlungen und Bearbeitungen des Werkes müssen unter den gleichen Bedingungen weitergegeben werden. Der Name des Autors/Rechteinhabers muss in der von ihm festgelegten Weise genannt werden.

    - Weitere Informationen
Pro-Linux
Pro-Linux @Twitter
Neue Nachrichten