歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu下Thinkpad風扇配置

Ubuntu下Thinkpad風扇配置

日期:2017/2/28 16:11:22   编辑:Linux教程

安裝thinkfan

thinkfan的配置非常簡單,它通過讀取配置文件(/etc/thinkfan.conf)中的(FAN_LEVEL, LOWER_LIMIT, UPPER_LIMIT)
三元組來實現使用溫度上下限來控制風扇轉速級別。底層是需要有thinkpad_acpi內核模塊的支持,
內核模塊通過/proc/acpi/ibm/fan這個procfs節點給用戶空間提供了風扇控制的具體方法。

打開thingkpad_acpi的風扇控制
首先要打開thinpad_acpi的風扇控制支持,具體做法是在加載這個內核模塊的時候給它傳遞一
個打開風扇控制的變量。具體做法如下:

modprobe thinkpad_acpi fan_control=1 experimental=1

要實現開機加載模塊時設置,則需要在/etc/modprobe.d/下增加一個配置文件thinkpad-acpi.conf,內容:

options thinkpad_acpi experimental=1 fan_control=1

安裝thinkfan
安裝Ubuntu軟件倉庫裡面的thinkfan和sysfsutils(讀取和設置sysfs屬性)。

aptitude install thinkfan sysfsutils

thinkfan會在系統的運行級別中添加thinkfan的後台服務,這樣就可實現開機運行。

配置和激活thinkfan
閱讀/etc/thinkfan.conf可以知道它是通過thinkpad_acpi提供的風扇控制接口來實現風扇控制的,
它給風扇的轉速級別對應了一個上下限溫度, 【 Linux公社 www.Linuxidc.com 】 在這個上下限內就設置對應的轉速。

安裝後發現thinkfan並沒有直接生效,閱讀了/etc/init.d/thinkfan腳本後發現還需要設置/etc/default/thinkfan
文件中的START=yes。

到這裡,thinkpad的風扇控制就應該打開了。

玩thinkpad_acpi的風扇控制接口
Ubuntu對於Thinkpad ACPI的驅動支持相當豐富,而這個模塊提供了電腦上幾乎所有會發熱的部件的信息。

在Shell下運行 cd /proc/acpi/ibm/進入目錄。其中的文件就是acpi當前的信息,包括各個指示燈是否亮著,快捷鍵的狀態,是否連接了外設等等。用cat [parm] > filename就可以直接往文件裡寫數據,這個數據會影響到電腦。而其中的thermal就是顯示溫度的。運行cat thermal,得到結果如下:

temperatures: 48 39 39 43 28 -128 24 -128 39 40 -128 -128 -128 -128 -128 -128

這裡的結果和Thinkpad型號有關,各個數字表示的部件溫度也各不相同,在thinkwiki上可以查到資料。都是網友實驗出來的,沒有官方資料。現在比較確定的是第一個一般是CPU溫度。其中-128(就是單字節有符號整數的最小值)表示讀不到溫度。比如有些讀取電池溫度而此時電池沒裝,有些讀取Ultrabay擴展底座溫度等。

好,接下來是風扇的問題。在同一目錄下運行cat fan,將顯示當前風扇狀態:

status: enabled

speed: 3344

level: 1

commands: level <level> (<level> is 0-7, auto, disengaged, full-speed)

commands: enable, disable

commands: watchdog <timeout> (<timeout> is 0 (off), 1-120 (seconds))

其中speed的單位是rpm,level表示轉速等級。0表示不轉,7最高速。

有了這兩個信息之後就是根據溫度控制風扇速度了。thinkfan控制軟件,配置文件在/etc/thinkfan.conf

我的X200配置如下:

sensor /proc/acpi/ibm/thermal (0, 3, 3, 2, 10, 0, 10, 0, 2, 2)

(0, 0, 45)

(1, 45, 48)

(2, 48, 55)

(3, 55, 58)

(4, 58, 60)

(5, 60, 63)

(6, 63, 65)

(7, 65, 32767)

第一行表示溫度值的修正。因為thinkfan根據讀取到的最高溫度來控制風扇。而部件溫度和承受力是不一致的。比如CPU在80度下也能正常工作,而硬盤此時就會掛掉。所以對於讀取到的溫度值需要修正,這個括號裡的數字會直接加到響應的thermal的數字上,一一對應。然後用其中修正過最大溫度值進行控制。

下面的配置的格式是(level, min, max),表示溫度在min和max之間的時候啟動相應的風扇級別。其中0和7一定要配置,而各個級別的區間要合並完整,否則就會在特定溫度下失效了。其中0級別從0開始,表示在max溫度以下時關閉風扇,而7級別的max一般設成頂值,表示在min溫度以上時全速運行。

最後用sudo thinkfan命令啟動控制軟件。隨心所欲的控制溫度,延長風扇壽命。

根據實際情況來看,達到0級的上限後會啟動比較輕微的1級風扇,如果此時只是上上網的話,溫度會馬上降下來,風扇就會停止。而如果在打游戲或者大型應用的話,溫度會緩緩上去,然後根據配置,風扇級別會緩緩提升,直到最高級別。

注意:

1、這個溫度寧願保守也不要因為風扇比較吵而設的很高,散熱問題是筆記本第一殺手。

2、這個控制軟件有時候會出錯,風扇會一直轉或者不轉。前一種情況無所謂,後一種就比較危險。如果察覺到電腦很熱而風扇沒動靜的話就要查看是否控制出了問題。一般重啟即可

Copyright © Linux教程網 All Rights Reserved