web-dev-qa-db-ja.com

thinkfanコントロールは、必要なときにファンの可能性を最大限に活用しません

私はThinkpad x201を所有していますが、環境温度のために非常に速く過熱し、最終的には予告なしに自殺します(そして、それは本当に私の歯車を磨きます)。

外では、コンピューターが重要なタスクなしで80に温度を上げ、より重いタスクで100℃(毎秒1度)に達する間、34℃になります。

一定の温度を維持するため、または最高速度を使用する臨界温度にあるときにファンをより早く起動するためのガイドラインに従いましたが、それでも自動値に固執します。

技術的側面

私が使用したリソースはここにあります: http://staff.science.uva.nl/~kholshei/thinkfan_guide/

レベル0の場合は0〜20度から始まる低温でファンが起動するように値を調整しました。

/etc/thinlfan.confの私の構成は次のとおりです。

$ tail -n 15 /etc/thinkfan.conf

sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp4_input
sensor /sys/devices/platform/coretemp.0/temp2_input

(0, 0, 21)
(1, 20, 22)
(2, 21, 25)
(3, 24, 28)
(4, 26, 33)
(5, 30, 40)
(6, 36, 49)
(7, 44, 62)
(128, 60, 65)
(129, 63, 100000)

最後の2つの値は実験的なものです。

私が実行するとき:

$ Sudo thinkfan -n

WARNING: Using default fan control in /proc/acpi/ibm/fan.

私が実行するとき:

$ echo level disengaged | Sudo tee /proc/acpi/ibm/fan 

ファンは約回転します。 6500 RPMは実際には有効ですが(温度はゆっくり低下します)、自動に切り替えた後、約5秒間このレベルを維持します。

私の質問は次のとおりです。これらの暑い日には、手動でファン速度を最大の可能性に手動で設定できますか/温度がそれほど上昇しないように値を調整するにはどうすればよいですか?

私がこれを試すのは今日が初めてなので、毎秒レベルを設定するcronジョブを設定する以外に何を試すことができるのかについての手がかりを期待しないでください-これは間違った考えです。

最後に、作業をやめる余裕はありません。最も重要なのは、プロセッサよりも時々ファンを変更することです。

あなたの助けと理解をありがとう、あなたが他の詳細を必要とするならば、私に知らせてください。

ああ...ここに私のlsb_releaseがあります:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 13.10
Release:        13.10
Codename:       saucy

...そしてuname:

$  uname -r      
3.11.0-23-generic
6
Tiberiu C.

Lenovo Thinkpad x220で使用しました(これは、systemdのシステムに関連する最新の回答です。

Sudo -i
  • thinkfanをインストールする

    apt install thinkfan
    
  • カーネルモジュールの構成

    echo "options thinkpad_acpi fan_control=1" > /etc/modprobe.d/thinkfan.conf
    
  • カーネルモジュールのリロード

    modprobe thinkpad_acpi
    
  • デフォルトのthinkfan構成を構成する

    sed -i 's|START=no|START=yes|' /etc/default/thinkfan
    sed -i 's|DAEMON_ARGS="-q"|DAEMON_ARGS="-q -b 1 -s 15"|' /etc/default/thinkfan
    
  • センサーを確認してください

    find /sys/devices -type f -name "temp*_input"
    

これが私のLenovo Thinkpad x220の結果です。

/sys/devices/virtual/hwmon/hwmon0/temp1_input
/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp3_input
/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp2_input
  • 上記の結果に基づいて/etc/thinkpad.confに書き込みます

    tp_fan /proc/acpi/ibm/fan
    hwmon /sys/devices/virtual/hwmon/hwmon0/temp1_input
    hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp3_input
    hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
    hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp2_input
    (0,     0,      40)
    (1,     32,     55)
    (2,     54,     66)
    (3,     65,     76)
    (4,     75,     80)
    (5,     78,     85)
    (6,     82,     88)
    (7,     85,     32767)
    
  • サービスを有効にして、すべてのブートおよびドロップ特権で自動的に開始されるようにします。

    systemctl enable thinkfan
    exit
    
  • ノートブックを再起動します

    systemctl enable thinkfan
    
  • 再起動後、サービスを確認してください

    systemctl status thinkfan.service
    

結果は次のようになります。

● thinkfan.service - simple and lightweight fan control program
   Loaded: loaded (/lib/systemd/system/thinkfan.service; enabled; vendor preset: enabled)
   Active: active (running) since Jum 2016-10-07 20:09:30 WIB; 28min ago
  Process: 2494 ExecStart=/usr/sbin/thinkfan (code=exited, status=0/SUCCESS)
 Main PID: 2496 (thinkfan)
   CGroup: /system.slice/thinkfan.service
           └─2496 /usr/sbin/thinkfan

Okt 07 20:09:30 thinkpad-x220 systemd[1]: Starting simple and lightweight fan control program...
Okt 07 20:09:30 thinkpad-x220 thinkfan[2494]: thinkfan 0.9.1 starting...
Okt 07 20:09:30 thinkpad-x220 thinkfan[2494]: Daemon PID: 2496
Okt 07 20:09:30 thinkpad-x220 systemd[1]: Started simple and lightweight fan control program.
5
isandroid

この構成を試してください。LenovoThinkPad L512/L520で正常に動作します。

Thinkfanをインストールする

Sudo apt-get install -y thinkfan

カーネルモジュールの構成

echo "options thinkpad_acpi fan_control=1" > /etc/modprobe.d/thinkpad_acpi.conf

カーネルモジュールをリロードする

modprobe -r thinkpad_acpi && modprobe thinkpad_acpi

Thinkfanを構成する

Sudo sed -i 's|START=no|START=yes|' /etc/default/thinkfan
Sudo sed -i 's|DAEMON_ARGS="-q"|DAEMON_ARGS="-q -b 1 -s 15"|' /etc/default/thinkfan

cat <<EOF> /etc/thinkfan.conf
hwmon /sys/devices/virtual/hwmon/hwmon0/temp1_input
(0, 0,  65)
(1, 65, 70)
(2, 70, 75)
(3, 75, 80)
(4, 80, 85)
(5, 85, 90)
(7, 90, 32767)
EOF

Thinkfanデーモンを再起動します

/etc/init.d/thinkfan restart
4
panticz.de

いくつかのさらなる研究の後、これは私が望んでいたようにそれを機能させることができた方法です。

カスタム温度しきい値-ファン速度の構成

Aptからthinkfanをインストールしました(正直なところ、すでにインストールされているかどうかは覚えていません:-S)

thinkfanという名前のプロセスがあるかどうかを確認するには

CLI:

ps -ef | grep thinkfan

そして、それがなければインストールします

CLI:

Sudo apt-get install thinkfan 

構成は/etc/thinkfan.confにあります

マッピングの温度-速度は、次のスニペットのように定義されます。

...
(0, 0, 21)
(1, 20, 22)
(2, 21, 25)
...

各グループは次の値(レベル、minTemperature、maxTemperature)を定義します。別のルールは、グループが相互にオーバーラップする必要があることです。

レベルは、次のように、最初に考えた文字列ではなく整数として定義されます。

  • 0-7-0〜〜4200RPMの8つのレベルポイント
  • 126-最大速度
  • 127-解除〜6900RPM

/etc/thinkfan.confの私の設定は次のようになります。

(0, 0, 21)
(1, 20, 22)
(2, 21, 25)
(3, 24, 28)
(4, 26, 33)
(5, 30, 40)
(6, 36, 49)
(7, 44, 52)
(126, 50, 59)
(127, 57, 100000)

温度の値は、 psensor のグラフから多少なりとも計算されます。これは、非効率的なファンがあることを非常に明確に示していますが、ラップトップが非常に古いことを考えると、それは正常だと思います。

1
Tiberiu C.