Ich laufe sensors-detect
auf meinem System mit, lm-sensors
weil mein System beim Ansehen von YouTube-Videos immer wieder heruntergefahren wird
Ich frage mich also, wie ich die Temperaturen von Lüfter und CPU manuell ohne eine Software von Drittanbietern ermitteln kann lm-sensors
. Ich bin mir nur nicht sicher, wo sie aufbewahrt werden.
processor : 0
vendor_id : AuthenticAMD
cpu family : 16
model : 6
model name : AMD Athlon(tm) II X2 240e Processor
power management: ts ttp tm stc 100mhzsteps hwpstate
x86_64
software-recommendation
temperature
wjandrea
quelle
quelle
Antworten:
Es klingt wie das, was Sie wollen, ist
/sys/class/hwmon
und/sys/class/thermal
.Beide bieten einen einfachen Shell-basierten Zugriff auf die gewünschten Daten (das hwmon-Verzeichnis enthält auch andere Sensortypen). Jedes hat ein Verzeichnis für jede Sensorschnittstelle in Ihrem System (das möglicherweise mehr als einen Sensor enthält).
Drei weitere Dinge zu beachten:
sensors
Befehls auch nur einmal pro Sekunde keine wahrnehmbaren Auswirkungen haben. Tatsächlich kann das regelmäßige Lesen der Dateien in den oben genannten Verzeichnissen eine größere Auswirkung haben.quelle
/proc/cpuinfo
zeigen einige einen AMD-Prozessor. Ich bin mir nicht sicher, warum OP dann eine Intel-spezifische Antwort akzeptiert hat, für die ein anderes Tool installiert werden muss./sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
ist, dass der Großteil meiner Arbeit mit extrem inaktiven Systemen erfolgt und die letztere Methode viel mehr Overhead hat, was zu einem konsistent um 4 bis 5 Grad höheren Ergebnis führt. Natürlich gibt es keinen Unterschied für ein stark belastetes System.Diese Antwort ist eine Möglichkeit, die Prozessortemperatur für einige Intel-Prozessoren manuell zu überwachen, indem direkt auf die maschinenspezifischen Register (MSR) zugegriffen wird.
Das erste, was zu beachten ist, ist in diesem Fall, dass das, was aus dem MSR ausgelesen wird, relativ zum Tcc, der Grenztemperatur, ist. Daher ist eine zusätzliche Berechnung erforderlich, um die tatsächliche Temperatur zu bestimmen.
Weitere Informationen finden Sie im Entwicklerhandbuch für Intel® 64- und IA-32-Architekturen oder in Ihrem Fall im AMD-Äquivalent.
In meinem Fall möchte ich die Bits 22-16 des MSR bei 0x1B1, auch bekannt als IA32_PACKAGE_THERM_STATUS. Der Tcc für meinen älteren i7-2600K beträgt 98 Grad.
Hier ist ein einfaches Skript zum manuellen Überwachen der Temperatur (und der CPU-Frequenz):
Und hier ist eine Beispielausgabe, bei der ich nach einer Weile etwas CPU-Last hinzufüge (die Temperatur steigt von 31 auf 73 Grad):
quelle
eval
?sudo apt install msr-tools
?man rdmsr
undman wrmsr
für zwei der einzelnen Befehle innerhalb des Pakets.Ich weiß nicht, was du wirklich willst. Das lm-sensor-Programm (und damit der
sensors
Befehl) verwendet die libsensor- Bibliothek. Wenn Sie Ubuntu 18.04 verwenden, handelt es sich um libsensors4 , Version 3.4.0-4. Dies ist dieselbe Bibliothek, die die Temperatur liest, die imsys
Verzeichnis angezeigt wird.Zusammenfassend ist festzuhalten, dass Sensoren eine gute Wahl sind. Um die Temperatur kontinuierlich zu beobachten, verwenden Sie
Wenn Sie ein Programm schreiben möchten, müssen Sie sich libsensors mit
man libsensors
oder in ansehen/usr/share/doc/
. Sie müssen einschließen#include <sensors/sensors.h>
. Es werden diesensors.conf
Dateien /etc/sensors3.conf und / oder /etc/sensors.conf verwendet . Weitere (Benutzer-) Konfigurationen finden Sie in/etc/sensors.d/
, falls verwendet.Wenn Sie glauben, dass Ihnen einige Sensoren fehlen, schauen Sie sich das
/sys/class/thermal
oder das verknüpfte/sys/devices/virtual/thermal
Verzeichnis an.Um die Temperaturen aller thermischen Zonen zu erhalten, verwenden Sie
Die Temperatur wird in milCelcius (mC) gemessen, im Fall über 77,0, 66,0, 67,0 ° C.
Kontinuierlich beobachten
In diesem Verzeichnis finden Sie auch Informationen zu Ihren Kühlgeräten (Lüftern) und zur Programmierung der PID-Regler.
Ich möchte auch darauf hinweisen, dass ein gewisser Übertemperaturschutz sehr hardwarebasiert codiert ist (dies ist eine gute Idee), wobei die Daten in Ihrem BIOS abgelegt werden.
quelle
thermal_zones
? Meine 4-Kern-Intel-CPU scheint nur eine einzige zu habenthermal_zone
(sensors
listet jedoch alle 4-Kern-Temperaturen korrekt auf).Installieren Sie Psensor ( psensor ) aus den Standard-Ubuntu-Repositorys und konfigurieren Sie Psensor so, dass automatisch ein Alarmton abgespielt wird, wenn die Temperatur ein vom Benutzer festgelegtes Maximum überschreitet. Damit können Sie einen Warnton hören, bevor Ihr System heruntergefahren wird, ohne Ihrem System zusätzlichen Anwendungsaufwand hinzuzufügen.
Psensor wird auf dem Desktop als kleines Thermometersymbol im Benachrichtigungsbereich in der oberen rechten Ecke des Desktops neben der Uhr angezeigt. Sie können jederzeit mit der rechten Maustaste auf das Thermometersymbol klicken, um die Hardwaretemperaturen anzuzeigen.
quelle