Skript zum Protokollieren der Temperatur auf Armbian

Skript zum Protokollieren der Temperatur auf Armbian

Mir ist bewusst, dass es andere Fragen gibt, die sehr ähnliche Fragen stellen, aber keine scheint mein Problem zu beantworten. Ich betreibe einen Odroid HC2 SBC mit Armbian für eine Nextcloud-Instanz. Vor zwei Tagen ist es zum ersten Mal abgestürzt, nachdem es über ein Jahr lang stabil lief. Um Überhitzung als Grund auszuschließen, möchte ich ein Skript zur Temperaturüberwachung schreiben, d. h. die integrierte Funktion „Armbianmonitor“ ausführen, die diese kontinuierliche Ausgabe erzeugt:

Stop monitoring using [ctrl]-[c]
Time       big.LITTLE   load %cpu %sys %usr %nice %io %irq   CPU  C.St.

09:52:33:  600/ 600MHz  0.23  12%   1%  10%   0%   0%   0% 53.0°C  0/13
09:52:38: 1400/ 600MHz  0.21   2%   0%   1%   0%   0%   0% 53.0°C  0/13
09:52:43: 1400/ 600MHz  0.20   2%   0%   1%   0%   0%   0% 53.0°C  0/13^C

mit:

sudo armbianmonitor -m | awk '$11 ~ "°C" {print $1; print $1;exit1}' ORS=' '

Ich erhalte diese Ergebnisse:

09:57:48: 53.0°C 09:57:53: 51.0°C 09:57:58: 51.0°C 09:58:03: 51.0°C 

aber ... ich hätte gerne nur ein Paar (Zeit und Temperatur) pro Ausführung des Skripts. Mit anderen Worten, awk und/oder (?) armbianmonitor sollen anhalten, nachdem sie das erste Paar zurückgegeben haben. Ich habe auch versucht, die Ausgabe eines Skripts, das diesen Befehl aufruft, in eine Datei umzuleiten, aber die Datei bleibt leer, vielleicht weil armbianmonitor eine kontinuierliche Ausgabe erstellt?

Antwort1

Ich bin einen etwas anderen Weg gegangen und gehe nun folgendermaßen vor:

jede Minute ausgeführt:

#!/bin/bash

dttm=$(date +"%d.%m.%Y %H:%M;")
temp=$(echo $(cat /sys/devices/virtual/thermal/thermal_zone0/temp) /1000 | bc)

echo $dttm $temp

Antwort2

DemzufolgeSeite, greifen Sie auf diese Datei zu:

/etc/armbianmonitor/datasources/soctemp

Beispiel einer Sekundenuhr:

watch -n 1 cat /etc/armbianmonitor/datasources/soctemp

verwandte Informationen