如何在 conky 中检测处理器的正确温度

如何在 conky 中检测处理器的正确温度

我正在使用conky&conkyforecast一个漂亮的小部件,其中包含一些系统信息和天气数据。

但我可以看到 conky 显示的温度与我在终端中运行的温度不同sensors

Conky 脚本行: Temperature: ${alignr}${acpitemp}°C

在 terminat 中运行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)

Conky 显示温度为 49°。

我怎样才能让它们显示相同的温度?conky 那边显示的是什么?

多谢!

答案1

来自命令行的温度

要了解温度,请使用:

# 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 测量温度

conky我用来监控 Ivy Bridge CPU 的系统变量是:

${hwmon 2 temp 1}°C

为了监控 Skylake CPU,我最初使用:

${hwmon 0 temp 1}°C

几个月后(可能是由于新内核),我在同一个 Skylake CPU 上切换到:

${hwmon 1 temp 1}°C

显示如下:

Conky 温度 4.8.10

答案2

我发现这对我有用:

${platform coretemp.0 temp 1}

这将从 读取温度信息/sys/devices/platform/coretemp.0/temp1_input

答案3

另一个可能的解决方案是:

$(exec sensors | grep 'Package id' | awk '{print $4}')

输出:

+33.0°C

答案4

另一个解决方案。使用 find 命令;

find /sys/devices/platform/ -iname '*input'

输出:

/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp3_input
/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp2_input

Conky变量;

${hwmon 2 temp 2}°C
${hwmon 2 temp 3}°C

相关内容