![如何通过 procfs 控制 thinkpad_acpi,RHEL 6.4](https://linux22.com/image/33804/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20procfs%20%E6%8E%A7%E5%88%B6%20thinkpad_acpi%EF%BC%8CRHEL%206.4.png)
我的 Thinkpad T400 上的 thinkpad_acpi 模块遇到问题。虽然处理器温度可能会有所不同,具体取决于 CPU 活动,从 40 到 85 度不等。摄氏温度下,我的风扇转速几乎保持恒定,在 2600-3000 rpm 的范围内。我原以为风扇会随着温度升高而加速,但事实并非如此。
在深入研究为什么它不能像人们预期的那样工作之前,我尝试检查手动提高风扇速度是否有效。根据本自述文件,我应该能够通过写入level [1-7]
来控制风扇速度/proc/acpi/ibm/fan
,但无论值是什么,我都会收到“无效参数”错误。
我意识到这是一个晦涩的问题,但可能有人知道可能是什么有效的论点。以下是我的一些尝试:
# cat /proc/acpi/ibm/fan
status: enabled
speed: 2966
level: auto
# echo 5 >/proc/acpi/ibm/fan
bash: echo: write error: Invalid argument
# echo 'level 5' >/proc/acpi/ibm/fan
bash: echo: write error: Invalid argument
# echo 'enable' >/proc/acpi/ibm/fan
bash: echo: write error: Invalid argument
# echo 'level auto' >/proc/acpi/ibm/fan
bash: echo: write error: Invalid argument
答案1
我认为你遇到了这个:
摘自 thinkwiki -如何控制风扇转速
出于安全原因,默认情况下禁用风扇控制操作。要启用风扇控制,必须为 thinkpad-acpi 提供模块参数 fan_control=1。
您应该能够创建以下文件,/etc/modprobe.d/thinkpad_acpi.conf
其中包含: options thinkpad_acpi fan_control=1 。启用该fan_control
选项后,您应该能够执行以下类型的命令:
$ echo level 0 > /proc/acpi/ibm/fan # (fan off)
$ echo level 7 > /proc/acpi/ibm/fan # (maximum speed)
$ echo level auto > /proc/acpi/ibm/fan # (automatic - default)
如果您收到 PERMISSION DENIED 错误,您可以使用以下命令语法作为解决方法:
$ echo level 0 | sudo tee /proc/acpi/ibm/fan # (fan off)
$ echo level 7 | sudo tee /proc/acpi/ibm/fan # (maximum speed)
$ echo level auto | sudo tee /proc/acpi/ibm/fan # (automatic - default)
答案2
你必须写一个/proc/acpi/ibm/fan
没有单词 的数字level
。例如,
echo 4 > /proc/acpi/ibm/fan
暗示:要以非 root 用户身份写入该文件,您可以使用tee
和sudo
。
echo 4 | sudo tee /proc/acpi/ibm/fan