如何进行最佳更新lm-sensors
才能与最新的硬件配合使用?
我全新安装了 Ubuntu 10.10 服务器,并得到以下结果:
$ sudo apt-get install lm-sensors
$ sensors
No sensors found! [...]
Try sensors-detect [...]
$ sudo sensors-detect
[...]
Driver 'to-be-written':
* Chip "Nuvoton W83667HG-B Super IO Sensors" (confidence: 9)
Note: there is no driver for [this sensor] yet.
Check http://www.lm-sensors.org/wiki/Devices for updates.
这关联告诉我这个芯片从内核 2.6.36 开始受支持(而 Ubuntu 10.10 使用 2.6.35),或者使用独立驱动程序。
更新 lm-sensors 的最简单方法是什么?
答案1
以下是主要的替代方案:
等待:如果您认为传感器读数并不重要,您可能只需等待下一个 Ubuntu 版本,该版本可能默认包含对该芯片的支持。
独立驱动程序:如果您不想等待,独立驱动程序可能是最佳选择,因为它对系统其余部分的改动很小。请参阅下文了解如何安装它。
升级内核:这有点危险,因为您将运行不受支持且未经测试的 Ubuntu 版本和内核版本组合 - 升级内核可能会修复传感器支持,但会破坏其他功能。升级内核也可能正常工作,只要您准备好在出现问题时回滚即可。
升级内核最简单的方法是使用 Ubuntu 的预构建内核包之一,请参阅ubuntu.com 内核构建了解使用说明。
安装独立驱动程序
阅读Ubuntu 编译 HOWTO、安装编译工具:
sudo apt-get install build-essential
下载驱动程序的源代码
wget [.h, .c and Makefile files]
编译、安装并加载新模块。这
w83627ehf
是最近编译的驱动程序的名称,不同系统的名称会有所不同。make all sudo make install sudo modprobe w83627ehf
检查是否有效
$ sensors
w83667hg-isa-0a10
Adapter: ISA adapter
in0: +1.18 V (min = +0.62 V, max = +1.47 V)
in1: +1.11 V (min = +1.05 V, max = +1.15 V)
[... snip ...]
添加配置
它仍然需要特定于芯片的配置,这是困难的部分。
- 幸运的情况:找到现成的配置lm-sensors.org 配置。
- 谷歌搜索:搜索芯片名称,您可能会找到具有相同芯片和工作配置的人。
- 最后的手段:与 BIOS 中的值进行比较,并根据读数去往何处做出有根据的猜测。
- 配置进入
/etc/sensors3.conf
- 重新加载(
sudo sensors -s
)或重新启动(sudo service lm-sensors restart
)以使用新配置。
检查后配置
$ sensors
w83667hg-isa-0a10
Adapter: ISA adapter
VCore: +1.18 V (min = +0.62 V, max = +1.47 V)
Vtt: +1.11 V (min = +1.05 V, max = +1.15 V)
AVCC: +3.34 V (min = +2.98 V, max = +3.63 V)
+3.3V: +3.34 V (min = +2.98 V, max = +3.63 V)
IGD: +1.56 V (min = +1.00 V, max = +2.00 V)
3VSB: +3.26 V (min = +2.98 V, max = +3.63 V)
VBat: +3.31 V (min = +2.54 V, max = +3.46 V)
CPU Fan: 1834 RPM (min = 301 RPM, div = 32)
M/B Temp: +30.0°C (high = +55.0°C, hyst = +52.0°C) sensor = thermistor
CPU Temp: +67.0°C (high = +72.0°C, hyst = +70.0°C) sensor = thermistor
AUX Temp: +27.0°C (high = +80.0°C, hyst = +75.0°C) sensor = thermistor
重启后使其工作
- 编辑
/etc/rc.local
- 添加行
modprobe w83627ehf
- (
w83627ehf
用系统的传感器替换。确保将其放在exit 0
终止脚本的行之前。)
健全性检查输出
- 将列表与 BIOS 读数进行比较
sensors
,验证它们是否大致相同。 - 如果你使用 Windows 双启动,你可以将 CPU 温度与实际温度。
校准显示值
- 您可以
compute in1 (56/10+1)*@, @/(56/10+1)
在sensors3.conf中添加类似以下行。@
是传感器值。第一次计算将传感器值转换为显示值,第二次计算将其转换回来。 - 看
man sensors.conf
- 获取准确的测量温度需要红外线温度计和几个小时的工作(见takkat 的回复在这里),但通常您可以用较少的努力获得“大致”值。
如果您知道改进此答案的方法,请这样做。