Eu não sei o que você realmente quer. O programa lm-sensor (e, portanto, o sensors
comando) faz uso da biblioteca libsensor ; caso você use o Ubuntu 18.04, é libsensors4 , versão 3.4.0-4. Esta é a mesma biblioteca que lê a temperatura que pode ser vista no sys
diretório
Para resumir, sensores é uma boa escolha. Para observar a temperatura, use continuamente
watch -n 1 sensors
Se você deseja escrever um programa, é necessário dar uma olhada nos libsensors man libsensors
ou no /usr/share/doc/
. Você tem que incluir #include <sensors/sensors.h>
. Ele usará os sensors.conf
arquivos /etc/sensors3.conf e / ou /etc/sensors.conf . Mais configurações (usuários) podem ser encontradas em /etc/sensors.d/
, se usadas.
Se você acha que estão faltando alguns sensores, dê uma olhada no diretório /sys/class/thermal
ou no link /sys/devices/virtual/thermal
.
Para obter as temperaturas de todas as zonas térmicas, use
$ cat /sys/devices/virtual/thermal/thermal_zone?/temp
77000
66000
67000
A temperatura é medida em miliCelcius (mC), no caso acima de 77,0, 66,0, 67,0 ° C.
Para assistir continuamente use
watch -n 1 cat /sys/devices/virtual/thermal/thermal_zone?/temp
Neste diretório, você também pode encontrar informações sobre seus dispositivos de refrigeração (ventilador) e como os reguladores PID são programados.
Eu também gostaria de afirmar que alguma proteção contra superaquecimento é codificada com base em hardware (é uma boa ideia), onde os dados são colocados em sua BIOS.