Mir ist keine Mainstream-Linux-Distribution bekannt, die diese Art von Informationen standardmäßig protokolliert. Die meisten Mainstream-Linux-Distributionen enthalten verschiedene Pakete, die Temperaturen protokollieren können, und einige dieser Pakete sind standardmäßig so eingerichtet, dass sie protokollieren.
Nehmen wir Debian als Beispiel, sensord
protokolliert regelmäßig alle ihm bekannten Informationen (Systemtemperaturen, Spannungen usw.) im Systemprotokoll, aber es muss manuell konfiguriert werden, bevor es etwas Nützliches protokollieren kann; hddtemp
kann so eingerichtet werden, dass Festplattentemperaturen regelmäßig protokolliert werden. Viele andere Tools können diese Art von Informationen abrufen (mithilfe von IPMI, SNMP usw.), aber auch hier müssen sie in den meisten Fällen konfiguriert werden, um entweder überhaupt auf die Informationen zugreifen zu können oder um sie interpretieren zu können. oder beides.
Diese Konfigurationsanforderung bedeutet, dass es schwierig wäre, eine generische Verteilung einzurichten, die Temperaturen standardmäßig auf sinnvolle Weise protokolliert. (Die meisten Systeme, die ich gesehen habe, haben mindestens einen ungültigen Überwachungseintrag, der Alarm auslösen würde, wenn er automatisch konfiguriert würde!) Natürlich ist es durchaus möglich, ein Installer-Image für Ihre eigenen Systeme einzurichten, da Sie wissen was sie sind und wie sie konfiguriert sind ... Sobald Sie die verschiedenen Tools konfiguriert haben, die zum Extrahieren von Temperaturinformationen erforderlich sind, sollten Sie besser ein geeignetes Überwachungstool (z. B. Munin) verwenden, um die Temperaturen zu protokollieren, anstatt sich auf die zu verlassen Systemprotokolle. Auf diese Weise können Sie auch Warnungen einrichten, um benachrichtigt zu werden, wenn etwas schief geht.
Erweitern auf sensord
Beispielsweise finden Sie seine Ausgabe im Systemprotokoll mit sensord
als Prozessname; Suchen Sie also entweder nach sensord
in /var/log/syslog
(standardmäßig) oder führen Sie journalctl -u sensord
aus . Sie sehen regelmäßige Protokolle wie die folgenden (ich habe das Datum und den Hostnamen entfernt):
sensord[2489]: Chip: acpitz-virtual-0
sensord[2489]: Adapter: Virtual device
sensord[2489]: temp1: 27.8 C
sensord[2489]: temp2: 29.8 C
sensord[2489]: Chip: coretemp-isa-0000
sensord[2489]: Adapter: ISA adapter
sensord[2489]: Physical id 0: 33.0 C
sensord[2489]: Core 0: 29.0 C
sensord[2489]: Core 1: 30.0 C
sensord[2489]: Core 2: 26.0 C
sensord[2489]: Core 3: 29.0 C
sensord[2489]: Chip: nct6776-isa-0a30
sensord[2489]: Adapter: ISA adapter
sensord[2489]: in0: +1.80 V (min = +1.60 V, max = +2.00 V)
sensord[2489]: in1: +1.86 V (min = +1.55 V, max = +2.02 V)
sensord[2489]: in2: +3.41 V (min = +2.90 V, max = +3.66 V)
sensord[2489]: in3: +3.39 V (min = +2.83 V, max = +3.66 V)
sensord[2489]: in4: +1.50 V (min = +1.12 V, max = +1.72 V)
sensord[2489]: in5: +1.26 V (min = +1.07 V, max = +1.39 V)
sensord[2489]: in6: +1.04 V (min = +0.80 V, max = +1.20 V)
sensord[2489]: in7: +3.31 V (min = +2.90 V, max = +3.66 V)
sensord[2489]: in8: +3.22 V (min = +2.50 V, max = +3.60 V)
sensord[2489]: fan1: 1251 RPM (min = 200 RPM)
sensord[2489]: fan2: 0 RPM (min = 0 RPM)
sensord[2489]: fan3: 299 RPM (min = 200 RPM)
sensord[2489]: fan4: 1315 RPM (min = 0 RPM)
sensord[2489]: fan5: 628 RPM (min = 200 RPM)
sensord[2489]: SYSTIN: 32.0 C (limit = 80.0 C, hysteresis = 70.0 C)
sensord[2489]: CPUTIN: 33.0 C (limit = 85.0 C, hysteresis = 80.0 C)
sensord[2489]: AUXTIN: 24.0 C (limit = 80.0 C, hysteresis = 75.0 C)
sensord[2489]: PECI Agent 0: 31.0 C (limit = 95.0 C, hysteresis = 92.0 C)
sensord[2489]: PCH_CHIP_CPU_MAX_TEMP: 57.0 C (limit = 95.0 C, hysteresis = 90.0 C)
sensord[2489]: PCH_CHIP_TEMP: 0.0 C
sensord[2489]: PCH_CPU_TEMP: 0.0 C
sensord[2489]: beep_enable: Sound alarm enabled
sensord[2489]: Chip: jc42-i2c-9-18
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]: temp1: 32.8 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-19
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]: temp1: 33.5 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-1a
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]: temp1: 34.0 C (min = 0.0 C, max = 60.0 C)
sensord[2489]: Chip: jc42-i2c-9-1b
sensord[2489]: Adapter: SMBus I801 adapter at 0580
sensord[2489]: temp1: 33.2 C (min = 0.0 C, max = 60.0 C)
Um dies zu bekommen, musste ich bestimmen, welche Module benötigt wurden (unter Verwendung von sensors-detect
):Standardmäßig wusste das System nur von den ACPI-gemeldeten Temperaturen, die eigentlich nichts entsprechen (sie variieren nie). coretemp
gibt die CPU-Kerntemperaturen auf Intel-Prozessoren an, nct6776
ist der Hardwaremonitor des Motherboards und jc42
ist die Temperaturüberwachung auf den DIMMs. Um es für die automatisierte Überwachung nützlich zu machen, sollte ich zumindest die ACPI-Werte deaktivieren und die Lüfter neu benennen und fan4
korrigieren Der Mindestwert von . Es gibt viele weitere Konfigurationsmöglichkeiten, lm_sensors
' Beispielkonfigurationsdatei gibt eine Vorstellung.
Einige Festplatten speichern automatisch einen aktuellen Temperaturverlauf. Ab man smartctl
:
scttemp, scttempsts, scttemphist – [nur ATA] druckt die Festplattentemperaturinformationen, die von den SMART Command Transport (SCT)-Befehlen bereitgestellt werden. Die Option ´scttempsts´ druckt aktuelle Temperatur und Temperaturbereiche, die vom SCT-Statusbefehl zurückgegeben werden, ´scttemphist´ druckt Temperaturgrenzen und die Temperaturverlaufstabelle, die vom SCT-Datentabellenbefehl zurückgegeben werden, und ´scttemp´ druckt beides. Die Temperaturwerte werden über Einschaltzyklen hinweg beibehalten. Das Aufzeichnungsintervall kann mit der Option ´-l scttempint,N[,p]´ konfiguriert werden, siehe unten. Die SCT-Befehle wurden in ATA8-ACS eingeführt und wurden auch von vielen ATA-7-Platten unterstützt.
Ein Befehl wie smartctl -data -l scttemphist /dev/sda
gibt Ihnen einen Temperaturverlauf, wenn das Laufwerk dies unterstützt. Zum Beispiel:
Index Estimated Time Temperature Celsius
103 2017-06-27 11:10 31 ************
... ..( 24 skipped). .. ************
0 2017-06-27 15:20 31 ************
1 2017-06-27 15:30 30 ***********
... ..( 9 skipped). .. ***********
11 2017-06-27 17:10 30 ***********
12 2017-06-27 17:20 31 ************
13 2017-06-27 17:30 30 ***********
... ..( 51 skipped). .. ***********
65 2017-06-28 02:10 30 ***********
66 2017-06-28 02:20 31 ************
67 2017-06-28 02:30 32 *************
68 2017-06-28 02:40 31 ************
69 2017-06-28 02:50 30 ***********
70 2017-06-28 03:00 31 ************
71 2017-06-28 03:10 30 ***********
72 2017-06-28 03:20 30 ***********
73 2017-06-28 03:30 31 ************
74 2017-06-28 03:40 30 ***********
75 2017-06-28 03:50 31 ************
76 2017-06-28 04:00 31 ************
77 2017-06-28 04:10 30 ***********
... ..( 22 skipped). .. ***********
100 2017-06-28 08:00 30 ***********
101 2017-06-28 08:10 31 ************
102 2017-06-28 08:20 30 ***********
Abgesehen davon müssen Sie jedoch ein Tool konfigurieren/installieren (siehe Stephen Kitts Antwort).