如何在 Linux 中手动启动风扇?

12 linux arch-linux acpi fan

我的风扇不在 Linux 中运行。我担心如果温度变得非常高,笔记本电脑可能会关闭。

我运行了以下命令:

dmesg | grep -I fan
Run Code Online (Sandbox Code Playgroud)

这给了我:

ACPI: Fan [FAN0] (off)
ACPI: Fan [FAN1] (off)
Run Code Online (Sandbox Code Playgroud)

该目录/proc/acpi/fan不存在。我该怎么做才能让风扇正常工作?

小智 5

风扇通常不是由 CPU 和操作系统控制,而是由系统管理控制器控制。这样即使操作系统出现故障它也能工作。

不幸的是,这意味着“fan off”错误通常是硬件问题。阅读:风扇(组件)需要更换。

唯一的例外是可以关闭风扇的非常损坏的 ACPI 实现。在这种情况下,风扇将在 BIOS 中运行。不过,我还没有听说过这样的配置。

  • 我不认为是这样。例如,在我的 macbook pro 上,与 Windows 相比,即使在冷启动后,风扇控制也会旋转得更快,然后变慢。对 linux 进行更新后,它的运行方式似乎更接近于 Windows 现在的运行方式。当然风扇速度是软件驱动的。 (2认同)

psu*_*usi 5

风扇应该ACPI管理,它允许内核与BIOS配合来监控温度并使用BIOS提供的规则自动调整风扇速度。不幸的是,我还没有看到任何一家 BIOS 供应商真正遵守该标准。您可以查看 /sys/class/ Thermal 并查看下面是否显示任何风扇以及是否可以更改其设置。一般来说,BIOS ACPI 表不提供风扇接口,而将其留给硬件控制器来管理。

许多这样的硬件控制器都可以被 lm-sensors 包检测到。您运行sensors-detect它,它将探测已知的控制器,并可以配置要加载的正确驱动程序来操作它。这通常会导致sensors能够报告各种温度和电压读数,并且fancontrol可以将脚本(在 Debian/Ubuntu 中单独打包)配置为根据温度读数来操纵风扇速度。

其中许多模块需要您添加acpi_enforce_resources=lax到内核命令行来加载。