我正在使用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
显示如下:
答案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