Linux.sensors: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 53: | Zeile 53: | ||
</code> | </code> | ||
=== Umsetzen der symbolischen id in eine Numerische === | |||
snmpwalk -On -v1 -c orgamon localhost LM-SENSORS-MIB::lmTempSensorsValue.1 | snmpwalk -On -v1 -c orgamon localhost LM-SENSORS-MIB::lmTempSensorsValue.1 | ||
.1.3.6.1.4.1.2021.13.16.2.1.3.1 = Gauge32: 34000 | .1.3.6.1.4.1.2021.13.16.2.1.3.1 = Gauge32: 34000 | ||
=== Abfrage der CPU Temperatur mit Indy.Delphi === | |||
<code> | <code> |
Version vom 14. Dezember 2008, 00:00 Uhr
Wir wollen die CPU Temperatur ermitteln und über das SNMP Protokoll einem Überwachungsserver lesbar machen.
Temperaturen überwachen mit sensors
- Paket "sensors" muss installiert sein
Danach führt man das Script
sensors-detect
aus. Bei dem Script habe ich eigentlich nur solange die Enter-Taste gedrückt, bis es durchgelaufen war. Natürlich habe ich die Ausgaben gelesen, aber ich wüsste nicht, warum ich schlauer sein sollte, als die Leute, die die Software entwickelt und sinnvolle Werte angenommen haben. Das Script erzeugt die Datei /etc/sysconfig/lm_sensors.
chkconfig --add lm_sensors
rclm_sensors start
nun kann durch Aufruf von
sensors
der Gesundheitszustand der Hardware abgefragt werden.
Nur ein Ausflug: Temperaturen der Festplatten
Untersützt die Festplatte die "Smart" Technologie, kann man in der Regel mit diesem Befehl die Temparatur auslesen:
smartctl -s on -a -d ata /dev/sda | grep Temp
Systemparameter übers Netzwerk auslesbar machen mit snmpd
- Paket "snmp" muss installiert sein
chkconfig --add snmpd
"public" für alle zugänglich machen
rocommunity public 192.168.115.0/24
ohne eine einschränkende 127.0.0.1 (=default) wird der Benutzerkreis erweitert.
rcsnmpd start
Test
snmpwalk -v1 -c public localhost LM-SENSORS-MIB::lmTempSensorsValue.1
Umsetzen der symbolischen id in eine Numerische
snmpwalk -On -v1 -c orgamon localhost LM-SENSORS-MIB::lmTempSensorsValue.1 .1.3.6.1.4.1.2021.13.16.2.1.3.1 = Gauge32: 34000
Abfrage der CPU Temperatur mit Indy.Delphi
with IdSNMP1 do
begin
Host:='192.168.115.191';
Community :='public';
active:=true;
Query.Clear;
Query.MIBAdd('1.3.6.1.4.1.2021.13.16.2.1.3.2',",ASN1_GAUGE);
Query.PDUType:=PDUGetRequest;
if SendQuery then
listbox4.Items.add( Reply.Value[0] )
else
listbox4.items.add('ERROR');
active:=false;
end;