风扇一直开着,CPU使用率相当低,找不到风扇或thermal_zone的proc文件。

我有一台装有Ubuntu 14.04和TLP电源管理的Asus N76VB笔记本电脑。然而,风扇总是开着的。声音并不是很大,但很烦人。我的CPU使用率大约在1-2%左右,时钟频率为1.20 GHz。
我已经在启动参数中添加了"acpi=force",但没有改变任何东西。
/proc/acpi/fan: No such file or directory
/proc/acpi/thermal_zone: No such file or directory

我已经加载了所有的Asus ACPI模块。 lsmod | grep asus:
asus_nb_wmi            16990  0 
asus_wmi               24191  1 asus_nb_wmi
sparse_keymap          13948  1 asus_wmi
video                  19476  2 i915,asus_wmi
wmi                    19177  2 mxm_wmi,asus_wmi

不知怎么的,它可以读取温度。

传感器

acpitz-virtual-0
Adapter: Virtual device
temp1:        +43.0°C  (crit = +108.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Physical id 0:  +44.0°C  (high = +87.0°C, crit = +105.0°C)
Core 0:         +44.0°C  (high = +87.0°C, crit = +105.0°C)
Core 1:         +42.0°C  (high = +87.0°C, crit = +105.0°C)
Core 2:         +39.0°C  (high = +87.0°C, crit = +105.0°C)
Core 3:         +39.0°C  (high = +87.0°C, crit = +105.0°C)

asus-isa-0000
Adapter: ISA adapter
temp1:        +43.0°C  

我真的希望有人知道如何解决这个问题。我找到的几乎所有信息都是关于节省电力以减少发热。
我有Intel和NVIDIA(GeForce 740M)的显卡,但我几乎总是使用Intel。
$ sudo lshw -c display
  *-display               
       description: VGA compatible controller
       product: 3rd Gen Core processor Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:43 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)

fwts 风扇

http://pastebin.com/tCRW4Tn6


1你有考虑过从你的笔记本电脑制造商推荐的最新版本更新你的BIOS吗?这有时可以解决ACPI问题。 - fossfreedom
是的,有一个更新“更新了热政策”,但我在安装Ubuntu之前已经安装了它。 - Louis Matthijssen
为什么不联系制造商,询问为什么“更新的散热策略”无法正常工作?您可以访问http://support.asus.com/contactus.aspx?SLanguage=en,选项5、6或7可能是一个好的起点。祝您好运! - Elder Geek
谢谢,我会尝试一下,但我不认为它会有帮助,因为Linux可能是“不支持”的。此外,我之前联系过他们,他们似乎无法回答最简单的问题。 - Louis Matthijssen
没办法,他们只能在我重新安装Windows后提供支持。 - Louis Matthijssen
尝试按照Notebook fan constantly running at a high speed中的回答描述,使用lm-sensors - bain
4个回答

Canonical开发了一个叫做FWTS的东西,它可以系统地测试提供的ACPI功能,并报告其健康状况和可能的纠正解决方案。运行它并将内容发布在这里(请使用pastebin),同时提交一个针对linux-kernel的launchpad bug。
至少运行"thermal_trip fan"测试。
[继续使用FWTS的结果]
测试2/2:加载系统,检查CPU风扇状态。 测试系统中有多少个风扇。检查风扇的当前状态。 加载CPU 20秒钟,尝试使风扇速度发生变化。 在CPU繁忙时,风扇冷却设备0的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备1的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备2的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备3的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备4的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备5的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备6的当前状态未从值0改变。 在CPU繁忙时,风扇冷却设备7的当前状态未从值0改变。
建议:未检测到与CPU相关的热散热设备状态的任何变化。可能是设备向驱动程序返回静态信息,或者风扇速度由固件自动控制,使用系统管理模式,在这种情况下,正在检查的内核接口可能无法正常工作。
好的,这证实了问题,没有反馈。

看起来你没有安装asus-laptop模块。有时候,这些特定于笔记本电脑的支持模块可以解决这些组件的问题。

$ sudo modprobe asus-laptop

这似乎曾经有效过,Ubuntu 12.04 on asus n76vb fan speed not working,这可能意味着你的情况是一个退步。不幸的是,在那种情况下,解决方法是“我更新了一堆东西然后它就好了” :(。


我只能运行风扇测试,因为似乎不再存在热保护测试。结果在问题中。 - Louis Matthijssen
1你说得对,模块没有加载。但是我遇到了这个错误:modprobe: ERROR: could not insert 'asus_laptop': No such device。我已经搜索了一些资料,并在我的GRUB配置中添加了acpi_osi=Linux,但还是无法解决问题。如果你有任何修复的想法,我会非常感激。我会继续搜索。 - Louis Matthijssen
我会给你50个声望作为你的努力回报。非常感谢你。我觉得这本笔记本完全没有ACPI支持风扇,它们似乎完全由BIOS控制。 - Louis Matthijssen
谢谢!如果你想继续研究,可以在freenode上找我,我的用户名是ppetraki。 - ppetraki

我做了两件事来降低风扇噪音:

  1. 按照下面的描述,添加了一个启动参数
  2. 安装了 Linux 上非常好用的电源管理工具 tlp

我按照这个顺序进行操作,第2个方法效果最明显。


添加引导参数:

  1. sudo nano /etc/default/grub
  2. 编辑以GRUB_CMDLINE_LINUX_DEFAULT开头的行,并在其他文字之间的“双引号”中添加acpi_osi=
  3. 保存
  4. 运行sudo update-grub
  5. 重新启动

更多详细信息请点击这里这里,德文版请点击这里

安装tlp

sudo apt-get install tlp


我必须提到,在原始答案中是使用了acpi_osi=Linux,所以你也可以尝试一下这个。
最后,我在一台华硕G53JW上进行了这个操作,使用的是Debian 8(虽然Ubuntu也有tlp)。它还适用于最新的4K华硕笔记本电脑(UX501VW)。

Linux 3.13存在与风扇控制相关的错误:kernel.org bug #71711 Strange / dangerous fan policy since 3.13。看起来引入此错误的补丁将在Linux 3.15中被撤销。同时,您可以尝试安装来自kernel PPA的3.12.x主线内核之一。错误报告似乎表明3.12.17应该可以正常工作。
Nouveau可能存在风扇控制问题,如果您使用的是Nvidia显卡并且出现了风扇不正常运转的情况,切换到专有驱动程序可能会有所帮助。
检查系统是否有任何BIOS更新。许多风扇控制器依赖于BIOS正确设置某些传感器值。

好的,既然我已经安装了NVIDIA驱动程序和最新的BIOS更新,我想尝试一下内核的事情。我想知道是否需要安装linux-headers?如果是这样,我应该同时安装amd64alllinux-headers还是只需要安装amd64的呢? - Louis Matthijssen
除非您使用一些需要重新编译(DKMS)的外部内核模块,否则您不应该需要Linux头文件。 - bain
我觉得NVIDIA使用这个?所以我应该安装amd64all还是只安装amd64 - Louis Matthijssen
是的,Nvidia模块将使用它。请安装两者。 - bain
我必须报告一下,自从我将系统从Ubuntu 12.04升级到14.04后,我的Asus N55SL的温度大约高了10°C。我的问题是否与这里讨论的有关?有没有办法进一步调试这个问题? - Andrea Borga
@AndreaBorga 可能是这样,kernel.org 的 bug 报告中似乎没有明确的解决方案。如果你想试着找出问题所在,你需要重新测试 12.04 内核,然后从那个版本开始逐步检测到你的 14.04 内核。在这之前,尝试使用最新的上游发布版(HEAD 或者 4.2.0-rc7)以确保你不是在调试已经修复的问题。或许值得先在该 bug 报告中询问其他人目前的结果。 - bain

我在我的Dell Inspiron 15 7537上遇到了同样的问题。
当我将附加驱动中的nVidia驱动更改为Nouveau驱动时,问题就解决了。我不知道为什么,但在我的情况下它起作用了。
我对Ubuntu还很陌生,所以我非常不愿意去调整系统风扇。我安装了一个叫做“psensor”的程序来监控系统温度。
在系统监视器中,CPU使用率看起来很正常,所以我认为可能是GPU使用率出了问题,而系统监视器中没有报告这个问题,所以我幸运地第一次猜测尝试更改图形驱动程序。