{"id":4225,"date":"2018-01-16T21:30:37","date_gmt":"2018-01-16T20:30:37","guid":{"rendered":"http:\/\/speefak.spdns.de\/oss_lifestyle\/?p=4225"},"modified":"2024-06-02T12:50:49","modified_gmt":"2024-06-02T10:50:49","slug":"thinkfan-thinkpad-lueftersteuerung","status":"publish","type":"post","link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/thinkfan-thinkpad-lueftersteuerung\/","title":{"rendered":"Thinkfan &#8211; Thinkpad L\u00fcftersteuerung"},"content":{"rendered":"<p>Die von Lenovo f\u00fcr die meisten Thinkpads vorgegebenen Grenzwerte f\u00fcr den CPU L\u00fcfter sind eher suboptimal. Per Voreinstellung schaltet sich der CPU L\u00fcfter selbst bei unter 40 \u00b0C Grad CPU Temperatur nicht aus.\u00a0 F\u00fcr Debian und Debian basierte Betriebssysteme gibt es daf\u00fcr das Thinkfan Script.<\/p>\n<hr \/>\n<h2><span id=\"Installation\" class=\"mw-headline\">Installation<\/span><\/h2>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo apt-get install thinkfan\r\n<\/pre>\n<h3>Damit die L\u00fcftersteuerung funktioniert, mu\u00df das Kernelmodul <b>thinkpad_acpi<\/b> mit der Option <code>fan_control=1<\/code> geladen werden. Die daf\u00fcr notwendige Konfigurationsdatei erzeugt man mittels<\/h3>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">echo \"options thinkpad_acpi fan_control=1\" | sudo tee \/etc\/modprobe.d\/thinkfan.conf\r\n<\/pre>\n<p>Anschlie\u00dfend l\u00e4dt man das Modul neu<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo modprobe -rv thinkpad_acpi\r\nsudo modprobe -v thinkpad_acpi\r\n<\/pre>\n<p><u>Hinweis:<\/u> falls der erste Befehl mit der Meldung <i>&#8220;modprobe: FATAL: Module thinkpad_acpi is in use&#8221;<\/i> fehlschl\u00e4gt, startet man stattdessen das ThinkPad neu, um das Modul mit der ge\u00e4nderten Konfiguration zu laden.<\/p>\n<hr \/>\n<h2><span id=\"Automatischer_Start\" class=\"mw-headline\">Automatischer Start<\/span><\/h2>\n<p>Um thinkfan beim Systemstart automatisch zu aktivieren, wird in der Datei <b>\/etc\/default\/thinkfan<\/b> die Zeile START=yes hinzugef\u00fcgt bzw editiert.<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">START=yes\r\n<\/pre>\n<p><u>Hinweis:<\/u> Ab Debian 8.0 Jessie muss zus\u00e4tzlich zu den o.g. Punkten noch der Dienst automatisch gestartet werden. Dies geschieht durch folgenden Befehl:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo systemctl enable thinkfan.service\r\n<\/pre>\n<p>Alternativ kann auch das Terminalprogramm <strong>sysv-rc-conf <\/strong>zum Aktivieren versch. Startscripte in allen verf\u00fcgbaren Runlevels genutzt werden<\/p>\n<hr \/>\n<h2><span id=\"Temperaturschwellen_konfigurieren\" class=\"mw-headline\">Temperaturschwellen konfigurieren<\/span><\/h2>\n<p>Thinkfan besitzt keine GUI. Die Temperaturschwellen werden \u00fcber die Textdatei <b>\/etc\/thinkfan.conf<\/b> konfiguriert.<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\"># T430 mit SSD ( keine HDD )\r\n(0, 0, 57)\r\n(1, 50, 61)\r\n(2, 52, 62)\r\n(3, 53, 63)\r\n(4, 56, 65)\r\n(5, 59, 66)\r\n(7, 63, 32767)\r\n\r\n\r\n# T430 defaults\r\n#(0, 0, 55)\r\n#(1, 48, 60)\r\n#(2, 50, 61)\r\n#(3, 52, 63)\r\n#(4, 56, 65)\r\n#(5, 59, 66)\r\n#(7, 63, 32767)<\/pre>\n<p>Jede Zeile besteht aus drei Werten &#8211; deren Bedeutung ist (von links nach rechts):<\/p>\n<ul>\n<li>L\u00fcfterlevel 0 (aus) &#8211; 7 (max.), 127 (&#8220;disengaged&#8221;, d.h. volle Pulle ohne Regelung)<\/li>\n<li>Temperatur bei deren Erreichen in absteigender Richtung der L\u00fcfterlevel um 1 verringert wird<\/li>\n<li>Temperatur bei deren Erreichen in aufsteigender Richtung der L\u00fcfterlevel um 1 erh\u00f6ht wird<\/li>\n<\/ul>\n<p><u>Hinweis:<\/u> ber\u00fccksichtigt wird jeweils nur der h\u00f6chste Wert aller konfigurierten Temperatursensoren.<\/p>\n<p>Nach dem Einrichten der Schwellen kann der thinkfan-D\u00e4mon manuell gestartet werden<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo systemctl start thinkfan\r\n<\/pre>\n<p>&nbsp;<\/p>\n<h2><span id=\"Temperatursensoren_mit_Offsets_versehen\" class=\"mw-headline\">Temperatursensoren mit Offsets versehen<\/span><\/h2>\n<p>Wie oben beschrieben, richtet sich thinkfan immer nach der h\u00f6chsten Temperatur aus den vorhandenen Sensoren. M\u00f6chte man einzelne Sensoren st\u00e4rker gewichten, so versieht man sie mit einem Offset. Dazu nimmt man eine sensors-Zeile vor den Schwelleneinstellungen auf. Im Beispiel werden zum Wert des 2., 9. und 10. Sensors jeweils 5\u00b0C addiert:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sensor \/proc\/acpi\/ibm\/thermal (0, 5, 0, 0, 0, 0, 0, 0, 5, 5)\r\n<\/pre>\n<p><b><u>Warnung:<\/u> Offsets sollten nur mit der gebotenen Vorsicht eingesetzt und die Einstellungen unbedingt per Testbetrieb (s.u.) \u00fcberpr\u00fcfen werden.<\/b><\/p>\n<p><u>Hinweis:<\/u> negative Offsets funktionieren hier nicht.<\/p>\n<hr \/>\n<h2><span id=\"Regelverhalten\" class=\"mw-headline\">Regelverhalten<\/span><\/h2>\n<p>Sollte thinkfan allzu schnell zwischen den L\u00fcfterstufen hin und her springen, kann man <b>\/etc\/default\/thinkfan<\/b> anpassen:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">DAEMON_ARGS=\"-q -b 1 -s 3\"\r\n<\/pre>\n<p>Bedeutung der Optionen:<\/p>\n<ul>\n<li>-b \u2013 der sog. &#8220;Bias&#8221; (Default: 5) dient dazu die Reaktionsgeschwindigkeit bei schnell steigender Temperatur zu verbessern<\/li>\n<li>-s \u2013 maximale Zeit (in Sekunden) zwischen zwei Temperaturmessungen (Default: 5)<\/li>\n<\/ul>\n<p>Einzelheiten stehen in der <a class=\"external text\" href=\"http:\/\/manpages.ubuntu.com\/manpages\/precise\/man1\/thinkfan.1.html\" rel=\"nofollow\">Manpage<\/a>.<\/p>\n<hr \/>\n<h2><span id=\"Temperaturen_anzeigen\" class=\"mw-headline\">Temperaturen anzeigen<\/span><\/h2>\n<p>Bei ThinkPads zeigt man die Werte aller Temperatursensoren mit<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">cat \/proc\/acpi\/ibm\/thermal\r\n<\/pre>\n<p>an. Der erste Wert ist stets die CPU. Die Zuordnung der weiteren Sensoren h\u00e4ngt vom jeweiligen Modell ab. Einzelheiten findet man <a class=\"external text\" href=\"http:\/\/www.thinkwiki.org\/wiki\/Thermal_sensors\" rel=\"nofollow\">hier<\/a>.<\/p>\n<hr \/>\n<h2><span id=\"Testbetrieb\" class=\"mw-headline\">Testbetrieb<\/span><\/h2>\n<p>Um die Wirkung der vorgenommenen Einstellungen direkt beobachten zu k\u00f6nnen, stoppt man zuerst den im Hintergrund laufenden thinkfan-D\u00e4mon<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo systemctl stop thinkfan\r\n<\/pre>\n<p>Anschlie\u00dfend wird thinkfan im Vordergrund gestartet:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true \">sudo thinkfan -n\r\n<\/pre>\n<p>Es erscheint folgende fortlaufende Ausgabe (Beispiel)<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">WARNING: Using default temperature inputs in \/proc\/acpi\/ibm\/thermal.\r\nWARNING: You have not provided any correction values for any sensor, and your fan will only start at 55 \u00b0C. This can be dangerous for your hard drive.\r\nConfig as read from \/etc\/thinkfan.conf:\r\nFan level\tLow\tHigh\r\n 0\t\t0\t55\r\n 1\t\t48\t60\r\n 2\t\t50\t61\r\n 3\t\t52\t63\r\n 4\t\t56\t65\r\n 5\t\t59\t66\r\n 7\t\t63\t32767\r\n\r\nsleeptime=5, temp=50, last_temp=0, biased_temp=50 -&gt; level=1\r\nsleeptime=5, temp=60, last_temp=59, biased_temp=60 -&gt; level=2\r\nsleeptime=5, temp=61, last_temp=60, biased_temp=61 -&gt; level=3\r\nsleeptime=5, temp=52, last_temp=53, biased_temp=52 -&gt; level=2\r\nsleeptime=5, temp=50, last_temp=51, biased_temp=50 -&gt; level=1\r\n<\/pre>\n<p>Mit Strg+C kann der Test beendet werden.<\/p>\n<hr \/>\n<h2><span id=\"Problembehebung\" class=\"mw-headline\">Problembehebung<\/span><\/h2>\n<p><span id=\"Keine_Funktion_auf_X220.2C_T420.28s.29_.E2.80.93_sowie_auf_allen_neueren_Modellen\" class=\"mw-headline\">Keine Funktion auf X220, T420(s) \u2013 sowie auf allen neueren Modellen<\/span><\/p>\n<p><u>Symptom:<\/u> beim manuellen Start von thinkfan per<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo systemctl start thinkfan\r\n<\/pre>\n<p>erscheint folgender Output<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">\/proc\/acpi\/ibm\/thermal: No such file or directory\r\n<\/pre>\n<p><u>Ursache:<\/u> die Datei <b>\/proc\/acpi\/ibm\/thermal<\/b> existiert bei den betroffenen Modellen nicht mehr. Die Temperatursensoren sind an eine andere Stelle im Sysfs umgezogen und thinkfan erkennt sie nicht.<\/p>\n<p><u>L\u00f6sung:<\/u> zur Ermittlung der verf\u00fcgbaren Temperatursensoren ist zun\u00e4chst das Paket<\/p>\n<ul>\n<li><b>lm-sensors<\/b><\/li>\n<\/ul>\n<p>zu installieren. Anschlie\u00dfend startet man die Erkennung mit dem Kommando<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo sensors-detect\r\n<\/pre>\n<p>Alle Nachfragen des Programms (bis auf die letzte) k\u00f6nnen mit &lt;Enter&gt; (YES) best\u00e4tigt werden.<\/p>\n<p>Die letzte Frage des Programms <i>&#8220;Do you want to add these lines automatically to \/etc\/modules? (yes\/NO)&#8221;<\/i> beantwortet man mit <code>yes<\/code> &lt;Enter&gt;.<\/p>\n<p>Als n\u00e4chsten Schritt l\u00e4dt man die von sensors-detect ermittelten Kernelmodule mit<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo systemctl start module-init-tools\r\n<\/pre>\n<p>oder wahlweise mit einem Neustart.<\/p>\n<p>Nun k\u00f6nnen die verf\u00fcgbaren Temperatursensoren mit folgendem Kommando angezeigt werden:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">find \/sys\/devices -type f -name \"temp*_input\"\r\n<\/pre>\n<p>Die Ausgabezeilen nimmt mit man einem vorangestellten hwmon in <b>\/etc\/thinkfan.conf<\/b> auf (vor den Temperaturschwellen).<\/p>\n<p>Beispiel (T430s):<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">hwmon \/sys\/devices\/virtual\/hwmon\/hwmon0\/temp1_input\r\n<\/pre>\n<p>Die aktuellen Werte der Temperatursensoren k\u00f6nnen mit folgenden Befehlen angezeigt werden, dabei kann auch die durch thinkfan auszulesende Datei gepr\u00fcft werden:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sensors\r\n<\/pre>\n<pre class=\"theme:dark-terminal lang:sh decode:true \">cat hwmon \/sys\/devices\/virtual\/hwmon\/hwmon0\/temp1_input<\/pre>\n<p><u>Hinweis:<\/u> da Sandy-Bridge-Prozessoren (und Nachfolger) sich recht schnell aufheizen, kann es n\u00fctzlich sein das <a title=\"Thinkfan\" href=\"http:\/\/thinkwiki.de\/Thinkfan#Regelverhalten\">Regelverhalten<\/a> anzupassen.<\/p>\n<hr \/>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2821 alignleft\" src=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-content\/uploads\/2014\/08\/CC_BY_NC_SA.png\" alt=\"CC_BY_NC_SA\" width=\"65\" height=\"23\" \/><span style=\"font-size: 10pt;\">by Speefak | <\/span><a href=\"http:\/\/thinkwiki.de\/Thinkfan\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-size: 10pt;\">thinkwiki.de<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die von Lenovo f\u00fcr die meisten Thinkpads vorgegebenen Grenzwerte f\u00fcr den CPU L\u00fcfter sind eher suboptimal. Per Voreinstellung schaltet sich der CPU L\u00fcfter selbst bei unter 40 \u00b0C Grad CPU Temperatur nicht aus.\u00a0 F\u00fcr Debian und Debian basierte Betriebssysteme gibt es daf\u00fcr das Thinkfan Script. Installation sudo apt-get install thinkfan Damit die L\u00fcftersteuerung funktioniert, mu\u00df [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,26,54],"tags":[],"class_list":["post-4225","post","type-post","status-publish","format-standard","hentry","category-anleitungen","category-linux","category-shell-programme"],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"speefak","author_link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/author\/speefak_oss\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/anleitungen\/\" rel=\"category tag\">Anleitungen<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/linux\/\" rel=\"category tag\">Linux<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/shell-programme\/\" rel=\"category tag\">Shell<\/a>","rttpg_excerpt":"Die von Lenovo f\u00fcr die meisten Thinkpads vorgegebenen Grenzwerte f\u00fcr den CPU L\u00fcfter sind eher suboptimal. Per Voreinstellung schaltet sich der CPU L\u00fcfter selbst bei unter 40 \u00b0C Grad CPU Temperatur nicht aus.\u00a0 F\u00fcr Debian und Debian basierte Betriebssysteme gibt es daf\u00fcr das Thinkfan Script. Installation sudo apt-get install thinkfan Damit die L\u00fcftersteuerung funktioniert, mu\u00df&hellip;","_links":{"self":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/4225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/comments?post=4225"}],"version-history":[{"count":0,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/4225\/revisions"}],"wp:attachment":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/media?parent=4225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/categories?post=4225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/tags?post=4225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}