Archlinux风扇设置
在笔记本(ThinkPad T440)连续两天因过热而死机后, 对内核的风扇控制算法果断失去信心.
风扇的用户层控制接口是 /proc/acpi/ibm/fan
, 但为防止用户控制不当烧坏机器, 默认情况下并没有对用户开放控制权. 这个由内核模块 thinkpad_acpi
控制, 可在加载该内核模块时传递参数 fan_control=1
打开风扇控制开关. 如果安装了 thinkfan
的话, 它包含文件 /usr/lib/modprobe.d/thinkpad_acpi.conf
, 其文件内容为:
options thinkpad_acpi fan_control=1
这样以后在开启启动加载 thinkpad_acpi
模块时会自动传递参数 fan_control=1
以便打开用户层控制开关.
然后就可以向 /proc/acpi/ibm/fan
写如特定数据控制风扇了, 比如说:
echo enable/disable > /proc/acpi/ibm/fan
: 启用/禁用风扇;echo level 1-7 > /proc/acpi/ibm/fan
: 设置风扇转速为 1-7 级, 等级越高转速越大;echo level auto > /proc/acpi/ibm/fan
: 由内核模块控制风扇转速(这就是默认配置, 烧死机了...);echo level full-speed/disengaged > /proc/acpi/ibm/fan
: 风扇启动最大转速(要的就是这种情况~~~);
注: /proc/acpi/ibm/fan
还支持其他很多控制参数, 详情可查阅 thinkpad_acpi 模块文档.
上面提到的 thinkfan
就是一个通过传感器检测硬件温度来实现自动控制风扇转速的工具. 它的配置文件是 /etc/thinkfan.conf
, 支持两种格式:
- 简单模式;
- 复杂模式.
1. 简单模式:
# 配置传感器
hwmon /sys/devices/virtual/thermal/thermal_zone0/temp
# 配置风扇控制接口(默认是: /proc/acpi/ibm/fan)
tp_fan /proc/acpi/ibm/fan
# 配置风扇等级与温度之间的关系
(0, 0, 55)
(1, 48, 60)
(2, 50, 61)
(3, 52, 63)
(4, 56, 65)
(5, 59, 66)
(7, 63, 32767)
配置风扇等级与温度之间的关系时, 每一行分三列, 第一列是风扇转速等级, 第二列和第三列是启用当前等级的最低和最高温度. 注意每一级的最低和最高温度与上一级的最高温度和下一级的最低温度都有重合. 当配置有多个传感器时, 取值最大(温度最高)的一个.
这种模式配置简单, 但只支持配置 1-7 等级的转速, 不能配置 auto/full-speed
.
2. 复杂模式:
复杂模式就要复杂一点, 它支持配置多个传感器, 支持为每个传感器设置温度阈值. 最重要的是, 它支持 auto/full-speed
.
为了省电和降温, 就配置了两条温度规则:
# 配置传感器
hwmon /sys/devices/virtual/thermal/thermal_zone0/temp
# 配置风扇控制接口(默认是: /proc/acpi/ibm/fan)
tp_fan /proc/acpi/ibm/fan
{ "level auto"
(0)
(55)
}
{ "level disengaged"
(50)
(100)
}
配置 OK 后重启 thinkfan
服务使之生效.
我最开始用的是 简单模式
, 在最初几天相安无事, 但后来又发生了过热死机的问题, 于是切换到 复杂模式
的配置, 就靠上面两条规则达到低温省电高温全速转起来的效果~~~
参考链接:
Archlinux风扇设置的更多相关文章
- [adminitrative][archlinux][setfont] 设置console的字体大小
电脑的分辨率高了之后,用命令行进入的时候,完全看不清楚,是否容易导致眼瞎. 第一步便把字体调大就成了很必要的操作. 使用一个命令能马上生效: setfont 使用配置文件 /etc/vconsole. ...
- Archlinux休眠设置
2017-03-11 更新: 优化部分文字描述; 默认情况下禁用 swap 分区, 当执行休眠操作时先启用 swap 分区, 然后再执行休眠操作(给 /usr/bin/{swapon,swapoff} ...
- (二 -5) 天猫精灵接入Home Assistant-自动发现Mqtt设备--电风扇
官网:https://www.home-assistant.io/components/fan.mqtt/ 1 添加配置文件 要在安装中启用MQTT风扇,请将以下内容添加到您的configuratio ...
- 轻量级桌面 openbox + tint2 + conky + stalonetray + pcmanfm + xcompmgr
openbox+tint2+pnmixer+conky=轻量级archlinux桌面环境设置备忘 缘起 机器上的Ubuntu 12.04有一段时间没有使用了,最近在用的时候发现频繁死机的情况,开始以为 ...
- 3D打印切片软件Cura及CuraEngine原理分析
引言 年初开始进入3D打印行业,受命以Cura为基础,研发一款自主的3D打印切片软件. 自主研发要取其长处,补其不足,首先自然是要搞清楚Cura到底做了什么,读Cura的代码是必需的.我一向都觉得比起 ...
- Linux命令总结大全,包含所有linux命令
使用说明:此文档包含所有的Linux命令,只有你想不到的没有你看不到的,此文档共计10万余字,有8400多行,预计阅读时间差不多需要3个小时左右,所以要给大家说一说如何阅读此文档 为了方便大家阅读,我 ...
- 为archlinux终端ls不同类型文件设置不同显示颜色
title: 为archlinux终端ls不同类型文件设置不同显示颜色 date: 2017-11-13 20:53:55 tags: linux categories: linux archlinu ...
- ArchLinux 设置时间同步和硬件时间同步错误 No usable clock interface found
笔记本不知道怎么了,总是时间对不上 硬件时间也设置不了,只能时间同步了 手动时间同步 ntpdate即可,ntp服务器在这里用这两个就好了 cn.ntp.org.cn 或 edu.ntp.org.cn ...
- ArchLinux下LXDE的安装与设置心得
安装 首先安装基本的桌面环境: $ sudo pacman -S lxde 奇怪的是默认并没有安装面板lxpanel,而且源里也没有,只好从AUR安装之: $ yaourt -S lxpanel-sv ...
随机推荐
- How to Use Instruments in Xcode
http://blog.csdn.net/woaifen3344/article/details/40748075 This is a blog post by iOS Tutorial Team m ...
- BufferedInputStream&BufferedOutputStream
使用字符缓冲区相关实现copy文件: public static void main(String[] args) { //创建文件对象指定要拷贝的文件路径(源文件),文件须存在,测试用例不做判断 F ...
- Ac日记——Distances to Zero codeforces 803b
803B - Distances to Zero 思路: 水题: 代码: #include <cstdio> #include <cstring> #include <i ...
- 51nod 1137.矩阵乘法-矩阵乘法
1137 矩阵乘法 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出2个N * N的矩阵M1和M2,输出2个矩阵相乘后的结果. Input 第1行:1个数N, ...
- HDU 6237.A Simple Stone Game-欧拉函数找素因子 (2017中国大学生程序设计竞赛-哈尔滨站-重现赛)
A Simple Stone Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Ot ...
- Codeforces Round #164 (Div. 2) A. Games【暴力/模拟/每个球队分主场和客场,所有球队两两之间进行一场比赛,要求双方球服颜色不能相同】
A. Games time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- 51Nod - 1405 树的距离之和(树形DP)
1405 树的距离之和 题意 给定一棵无根树,假设它有n个节点,节点编号从1到n,求任意两点之间的距离(最短路径)之和. 分析 树形DP. 首先我们让 \(1\) 为根.要开两个数组 \(up \ d ...
- 线段树【p1115】 最大子段和
题目描述-->p1115 最大子段和 虽然是一个普及-的题,但我敲了线段树 qwq 数组定义 \(lsum[ ]\)代表 该区间左端点开始的最大连续和. \(rsum[ ]\)代表 该区间右端点 ...
- Struts的线程安全
Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率.由于Servlet/JSP默认是以多线程模式执行的,所以,在编写代码时需要非常细致地考虑多线程的安全性问题.然而 ...
- POJ 3469 Dual Core CPU(最小割)
[题目链接] http://poj.org/problem?id=3469 [题目大意] 有N个模块要在A,B两台机器上执行,在不同机器上有不同的花费 另有M个模块组(a,b),如果a和b在同一台机子 ...