Thinkfan wurde ursprünglich entwickelt, um das Problem des unnötig hohen Energieverbrauchs des Lüfters zu lösen. Es bietet im Allgemeinen eine einfache Möglichkeit, den Lüfterpegel für bestimmte Temperaturbereiche zu steuern. Wenn aufgrund einer fehlerhaften Konfiguration der thinkfan Dienst nicht gestartet wird, ist eine manuelle Konfiguration nötig. Im Folgenden wird gezeigt, wie der thinkfan Dienst installiert und konfiguriert wird.
Installation
Die Installation erfolgt aus den Repositories mittels:
|
sudo apt-get install thinkfan lm-sensors |
|
Setting up thinkfan (0.9.2-1) ... Job for thinkfan.service failed. See 'systemctl status thinkfan.service' and 'journalctl> -xn' for details. invoke-rc.d: initscript thinkfan, action "start" failed. dpkg: error processing package thinkfan (--configure): subprocess installed post-installation script returned error exit status 1 Errors were encountered while processing: thinkfan E: Sub-process /usr/bin/dpkg returned an error code (1) |
*Treten bei der Installation Fehler auf, ist eine manuelle Konfiguration notwendig
Um Thinkfan beim Systemstart automatisch zu laden, wird der Dienst dem entsprechenden Runlevel hinzugefügt:
|
systemctl enable thinkfan.service |
Manuelle Konfiguration
Thinkfan greift mittels lm-sensors über dessen Datenpunkte auf die Sensoren des Systems zu. Die Grundkonfiguration von lm-sensors erfolgt folgendermaßen:
Die eingerichteten Sensoren mit den zugehörigen Werten können mit folgendem Befehl aufgelistet werden:
|
for i in $(find /sys/devices -type f -name "temp*_input"); do printf "$i => " && cat $i ;done | grep -v "=> 0" |
Die Ausgabe des o.g. Befehls liefert die von lm-sensors erfassten Datenpunkte, wenn der Wert nicht 0 (inaktiv) ist:
|
/sys/devices/platform/thinkpad_hwmon/hwmon/hwmon3/temp1_input => 41000 /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp3_input => 44000 /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp1_input => 45000 /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp2_input => 45000 /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp1_input => 41000 |
Der Zugriffspunkt des Thinkpad Lüfters wird wie folgt ausgelesen:
|
find /proc -type f -name "fan*" |
und verweist auf den Pfad:
In diesem Fall wurden 5 Sensoren mit entsprechenden Werten sowie eine Steuerungsdatei für den Lüfter gefunden. Diese werden nun in der thinkfan Konfiguration ( etc/thinkfan.conf ) eingetragen. Der Inhalt der Datei sieht dabei wie folgt aus:
|
tp_fan /proc/acpi/ibm/fan /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon3/temp1_input /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp3_input /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp1_input /sys/devices/platform/coretemp.0/hwmon/hwmon4/temp2_input /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp1_input (0, 0, 55) (1, 48, 60) (2, 50, 61) (3, 52, 63) (4, 56, 65) (5, 59, 66) (7, 63, 32767) |
Das o.g Muster ist folgendermaßen aufgebaut:
(STUFE, NIEDRIG, HOCH)
-
- STUFE ist die Lüfterstufe, die verwendet werden soll (0-7 mit thinkpad_acpi)
- NIEDRIG ist die Temperatur, bei der auf die vorherige Stufe herabgestuft wird
- HOCH ist die Temperatur, bei der auf die nächste Stufe heraufgestuft wird
*Alle Zahlen sind ganze Zahlen.
Tipps und Tricks
Die Lüfterstufe kann auf eine Ganzzahl zwischen 0 (kein Lüfter) und 7 (höchste Stufe) eingestellt werden. Dabei entspricht Stufe 7 (ca. 4500 U/min) nicht der maximalen Lüftergeschwindigkeit.
-
- Lüfterstufe setzten:
|
echo level 4 | sudo tee /proc/acpi/ibm/fan |
- Maximale Lüfterdrehzahl setzen:
|
echo level disengaged | sudo tee /proc/acpi/ibm/fan |
- Automatik Modus sezten
|
echo level auto | sudo tee /proc/acpi/ibm/fan |
Die aktuellen Lüfterwerte können wie folgt ausgelesen werden:
Script zur Ausgabe von CPU Temperatur und Thinkfan Werten:
|
#!/bin/bash while [[ -z $Quit ]] ; do clear printf " Check CPU and Thinkfan value \n" printf " host: $(hostname ) ( $(date) )\n\n" echo -en "$(sensors | grep CPU) \n $(cat /proc/acpi/ibm/fan | grep -v commands)" | awk -F ":" '{printf "%10s => %s \n" , $1, $2 }' printf "\n" printf " press any key to quit \n" read -n 1 -t 1 Quit done |
by Speefak | http://fmnt.info | https://medium.com | forum.thinkpads.com