Thinkfan: Unterschied zwischen den Versionen
Zeile 93: | Zeile 93: | ||
<u>Ursache:</u> die Temperatursensoren sind an eine andere Stelle im Sysfs umgezogen und thinkfan erkennt sie nicht. | <u>Ursache:</u> die Temperatursensoren sind an eine andere Stelle im Sysfs umgezogen und thinkfan erkennt sie nicht. | ||
<u>Lösung:</u> man | <u>Lösung:</u> zur Ermittlung der verfügbaren Temperatursensoren ist zunächst das Paket | ||
* '''lm-sensors''' | |||
zu installieren. Anschließend startet man die Erkennung mit dem Kommando | |||
sudo sensors-detect | |||
Alle Nachfragen des Programms können mit <Enter> (YES) bestätigt werden. | |||
Die letzte Frage des Programms ''"Do you want to add these lines automatically to /etc/modules? (yes/NO)"'' beantwortet man mit <code>yes</code> <Enter>. | |||
Zuletzt lädt man die von sensors-detect ermittelten Kernelmodule mit | |||
/etc/init.d/module-init-tools start | |||
Nun können die verfügbaren alle Temperatursensoren mit folgendem Kommando angezeigt werden: | |||
find /sys/devices -type f -name "temp*_input" | find /sys/devices -type f -name "temp*_input" | ||
Die Ausgabezeilen nimmt mit einem vorangestellten <code>sensor</code> in '''/etc/thinkfan.conf''' auf (vor den Temperaturschwellen). Beispiel: | |||
sensor /sys/devices/platform/coretemp.0/temp1_input | sensor /sys/devices/platform/coretemp.0/temp1_input | ||
sensor /sys/devices/platform/coretemp.1/temp1_input | sensor /sys/devices/platform/coretemp.1/temp1_input |
Version vom 22. Mai 2011, 18:27 Uhr
Einleitung
thinkfan ist eine einfache Software zur Lüftersteuerung für Linux. Dieser Artikel beschreibt Installation und Konfiguration für Debian und Ubuntu.
Voraussetzungen
Ab
- Ubuntu 10.04 "Lucid Lynx" bzw.
- Debian 6.0 "Squeeze"
ist thinkfan in den Paketquellen der Distribution enthalten.
Unterstützt werden alle ThinkPad-Modelle bei denen das Kernelmodul thinkpad_acpi geladen werden kann. Ausnahmen sind:
- SL-Reihe: keine Unterstützung für thinkpad_acpi
- L-, Edge-Reihe, X100e: benötigt Ubuntu 10.10 mit Kernel 2.6.35 oder 10.04 mit tp-Kernel 2.6.32
Installation
Paket installieren
Man installiert das Paket
- thinkfan
entweder mit der Paketverwaltung oder im Terminal
sudo apt-get install thinkfan
Hinweis: sudo
ist nur für Ubuntu nötig; bei Debian ruft man alle Kommandos stattdessen aus einer Root-Shell auf.
thinkpad_acpi konfigurieren
Damit die Lüftersteuerung funktioniert, muß das Kernelmodul thinkpad_acpi mit der Option fan_control=1
geladen werden. Dazu ist die Datei /etc/modprobe.d/thinkfan.conf mit Root-Rechten anzulegen
gksudo gedit /etc/modprobe.d/thinkfan.conf
und folgendes einzutragen
options thinkpad_acpi fan_control=1
Anschließend lädt man das Modul neu
sudo modprobe -rv thinkpad_acpi sudo modprobe -v thinkpad_acpi
Automatischer Start
Um thinkfan bei Systemstart automatisch zu aktivieren, ist die Datei /etc/default/thinkfan mit Root-Rechten zu editieren und in der folgenden Zeile das no
durch ein yes
zu ersetzen:
START=yes
Temperaturschwellen konfigurieren
thinkfan besitzt keine GUI. Die Temperaturschwellen werden über die Textdatei /etc/thinkfan.conf konfiguriert. Die vorgegebenen Schwellen sollten mit jedem ThinkPad funktionieren. Auf Wunsch kann die Datei mit Root-Rechten editiert werden:
(0, 0, 55) (1, 48, 60) (2, 50, 61) (3, 52, 63) (4, 56, 65) (5, 59, 66) (7, 63, 32767)
Jede Zeile besteht aus drei Werten - deren Bedeutung ist (von links nach rechts):
- Lüfterlevel 0 (aus) - 7 (max.)
- Temperatur bei deren Erreichen in absteigender Richtung der Lüfterlevel um 1 veringert wird
- Temperatur bei deren Erreichen in aufsteigender Richtung der Lüfterlevel 1 erhöht wird
Hinweis: berücksichtigt wird jeweils nur der höchste Wert aller im System vorgefundenen Temperatursensoren.
Nach dem Einrichten der Schwellen kann der thinkfan-Dämon manuell gestartet werden
sudo /etc/init.d/thinkfan start
Temperaturen anzeigen
Bei ThinkPads zeigt man die Werte aller Temperatursensoren mit
cat /proc/acpi/ibm/thermal
an. Der erste Wert ist stets die CPU. Die Zuordnung der weiteren Sensoren hängt vom jeweiligen Modell ab. Einzelheiten findet man hier.
Testbetrieb
Um die Wirkung der vorgenommenen Einstellungen direkt beobachten zu können, stoppt man zuerst den im Hintergrund laufenden thinkfan-Dämon
sudo /etc/init.d/thinkfan stop
Anschließend wird thinkfan im Vordergrund gestartet per
sudo thinkfan -n
Es erscheint folgende fortlaufende Ausgabe (Beispiel)
WARNING: Using default temperature inputs in /proc/acpi/ibm/thermal. WARNING: You have not provided any correction values for any sensor, and your fan will only start at 55 °C. This can be dangerous for your hard drive. Config as read from /etc/thinkfan.conf: Fan level Low High 0 0 55 1 48 60 2 50 61 3 52 63 4 56 65 5 59 66 7 63 32767 sleeptime=5, temp=50, last_temp=0, biased_temp=50 -> level=1 sleeptime=5, temp=60, last_temp=59, biased_temp=60 -> level=2 sleeptime=5, temp=61, last_temp=60, biased_temp=61 -> level=3 sleeptime=5, temp=52, last_temp=53, biased_temp=52 -> level=2 sleeptime=5, temp=50, last_temp=51, biased_temp=50 -> level=1
Mit Strg+C kann der Test beendet werden.
Problembehebung
Keine Funktion auf X220, T420, L420 mit Ubuntu 11.04 / Kernel 2.6.38
Symptom: beim manuellen Start von thinkfan per
sudo /etc/init.d/thinkfan start
erscheint folgender Output
/proc/acpi/ibm/thermal: No such file or directory
Ursache: die Temperatursensoren sind an eine andere Stelle im Sysfs umgezogen und thinkfan erkennt sie nicht.
Lösung: zur Ermittlung der verfügbaren Temperatursensoren ist zunächst das Paket
- lm-sensors
zu installieren. Anschließend startet man die Erkennung mit dem Kommando
sudo sensors-detect
Alle Nachfragen des Programms können mit <Enter> (YES) bestätigt werden.
Die letzte Frage des Programms "Do you want to add these lines automatically to /etc/modules? (yes/NO)" beantwortet man mit yes
<Enter>.
Zuletzt lädt man die von sensors-detect ermittelten Kernelmodule mit
/etc/init.d/module-init-tools start
Nun können die verfügbaren alle Temperatursensoren mit folgendem Kommando angezeigt werden:
find /sys/devices -type f -name "temp*_input"
Die Ausgabezeilen nimmt mit einem vorangestellten sensor
in /etc/thinkfan.conf auf (vor den Temperaturschwellen). Beispiel:
sensor /sys/devices/platform/coretemp.0/temp1_input sensor /sys/devices/platform/coretemp.1/temp1_input
Quelle für die Umgehungslösung: Thinkpad-Forum