1 2 3 4 5 6 7 8 |
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:
1 |
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:
1 |
sensors-detect |
Die eingerichteten Sensoren mit den zugehörigen Werten können mit folgendem Befehl aufgelistet werden:
1 |
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:
1 2 3 4 5 |
/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:
1 |
find /proc -type f -name "fan*" |
und verweist auf den Pfad:
1 |
/proc/acpi/ibm/fan |
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:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
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:
1echo level 4 | sudo tee /proc/acpi/ibm/fan - Maximale Lüfterdrehzahl setzen:
1echo level disengaged | sudo tee /proc/acpi/ibm/fan - Automatik Modus sezten
1echo level auto | sudo tee /proc/acpi/ibm/fan
- Lüfterstufe setzten:
Die aktuellen Lüfterwerte können wie folgt ausgelesen werden:
1 |
cat /proc/acpi/ibm/fan |
Script zur Ausgabe von CPU Temperatur und Thinkfan Werten:
1 2 3 4 5 6 7 8 9 10 |
#!/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