Я не знаю, чого ти насправді хочеш. Програма lm-сенсора (і, отже, sensorsкоманда) використовує бібліотеку лібсенсорів ; якщо ви використовуєте Ubuntu 18.04, це libsensors4 , версія 3.4.0-4. Це та сама бібліотека, яка зчитує температуру, яку можна побачити в sysкаталозі.
Підсумовуючи це, сенсори - хороший вибір. Щоб постійно спостерігати за температурою, використовуйте
watch -n 1 sensors
Якщо ви хочете написати програму, вам слід поглянути на лібсенсори man libsensorsабо поглянути в /usr/share/doc/. Ви повинні включити #include <sensors/sensors.h>. Він буде використовувати sensors.confфайли /etc/sensors3.conf та / або /etc/sensors.conf . Далі (для користувачів) конфігурацію можна знайти /etc/sensors.d/, якщо вона використовується.
Якщо ви думаєте, що вам не вистачає деяких сенсорів, погляньте на /sys/class/thermalпов'язаний /sys/devices/virtual/thermalкаталог або на нього .
Для отримання температури всіх теплових зон використовують
$ cat /sys/devices/virtual/thermal/thermal_zone?/temp
77000
66000
67000
Температуру вимірюють у міліЦелцій (мС), у випадку вище 77,0, 66,0, 67,0 ° С.
Для безперервного перегляду використовуйте
watch -n 1 cat /sys/devices/virtual/thermal/thermal_zone?/temp
У цьому каталозі ви також можете знайти інформацію про свої охолоджуючі (вентиляторні) пристрої та про те, як запрограмовані регулятори PID.
Я також хотів би зазначити, що деякий захист від перевищення температури кодується дуже апаратно (це гарна ідея), де дані розміщуються у ваших біологічних даних.