Как определить правильную температуру процессора в Conky

14

Я использую, conky&conkyforecastчтобы иметь хороший виджет, содержащий некоторую системную информацию и данные о погоде.

Но я вижу, что температура, которую показывает conky, отличается от температуры, которую я использую в терминале sensors.

Conky сценарий строки: Temperature: ${alignr}${acpitemp}°C

Запуск sensorsв терминате получает это:

florin@florin-Satellite-C650:~$ sensors
acpitz-virtual-0
Adapter: Virtual device
temp1:        +49.0°C  (crit = +110.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Core 0:       +51.0°C  (high = +80.0°C, crit = +90.0°C)
Core 2:       +60.0°C  (high = +80.0°C, crit = +90.0°C)

Конки показывает температуру 49 °.

Как я могу заставить их показывать одинаковую температуру? Что там показывает Конки?

Большое спасибо!

conualfy
источник

Ответы:

6

Я обнаружил, что это работает для меня:

${platform coretemp.0 temp 1}

Это читает информацию о температуре от /sys/devices/platform/coretemp.0/temp1_input.

Стефан ван ден Аккер
источник
5
По какой-то причине мне пришлось изменить это, ${platform coretemp.0/hwmon/hwmon0 temp 1}потому что temp1_inputсуществует только в /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_inputмоей системе (Debian sid)
mxmlnkn
3
На Ubuntu 16.04 с процессором Skylake я использовал: cat /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp*_inputчтобы получить четыре температуры по одному для каждого процессора.
WinEunuuchs2Unix
5

Температура из командной строки

Чтобы узнать температуру, используйте:

# Ivybridge Intel i7-3630QM
$ cat /sys/class/thermal/thermal_zone*/temp
69000
69000
67000

# Skylake Intel i7-6700HQ using paste after zone names
$ paste <(cat /sys/class/thermal/thermal_zone*/type) <(cat /sys/class/thermal/thermal_zone*/temp) | column -s $'\t' -t
INT3400 Thermal  20000
SEN1             53000
SEN2             49000
SEN3             53000
SEN4             55000
pch_skylake      70000
B0D4             47000
x86_pkg_temp     48000

Температура с Конки

Внутри conkyсистемной переменной, которую я использовал для мониторинга процессора Ivy Bridge, есть:

${hwmon 2 temp 1}°C

Для мониторинга процессора Skylake я изначально использовал:

${hwmon 0 temp 1}°C

Через несколько месяцев (возможно, из-за нового ядра) на том же процессоре Skylake я переключился на:

${hwmon 1 temp 1}°C

Дисплей выглядит так:

Температура Конки 4.8.10

WinEunuuchs2Unix
источник
2

Другое возможное решение:

${exec cat /sys/devices/platform/coretemp.0/temp1_input | cut -c-2 }

или если это не сработает:

${exec cat /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp1_input | cut -c-2 }
Иржи Кунеш
источник