Frage Wie regelt man die Lüfterdrehzahl?


Wie kann ich die Lüftergeschwindigkeit des Computers steuern?

Unter Windows gibt es ein wunderbares Programm namens SpeedFan.


153
2018-01-18 11:26


Ursprung


Ich habe hier einfache Cron-Lösung für ATI-Karten askubuntu.com/a/875241/375427 - Pavel Niedoba
Auf Linux, fancontrol wird mit konfiguriert pwmconfig. Benutzen watch sensors Sensoren unter CPU- und GPU-Last zu beobachten. Verwenden Sie diese Werte bei Leerlauf und Volllast, um festzulegen MINTEMP und MAXTEMP jeweils mit INTERVAL=1. Dies erhöht Ihre Rampen in Echtzeit, wenn die Last steigt. Dies ist die aktivste Kühlung, die eine Grundlage für weitere Optimierungen bietet. Lauf pwmconfig einmal und dann bearbeiten /etc/fancontrol direkt. Lauf sudo service fancontrol restart nach jeder Optimierung. - Dominic Cerisano


Antworten:


Hinweis vor dem Start:

Diese Funktionalität hängt sowohl von Ihrer Hardware als auch von Ihrer Software ab. Wenn Ihre Hardware keine Lüftergeschwindigkeitssteuerungen unterstützt oder sie dem Betriebssystem nicht anzeigt, ist es sehr wahrscheinlich, dass Sie diese Lösung nicht verwenden konnten. Wenn es das tut, aber die Software (auch bekannt als Kernel) nicht weiß, wie man es kontrolliert, haben Sie kein Glück.


  1. Installiere das LM-Sensoren und Lüftersteuerung Pakete.
  2. Konfigurieren LM-Sensoren 

    1. Im Terminaltyp sudo sensors-detect und beantworte JA für alle JA / NEIN Fragen.
    2. Am Ende der Sensorerkennung wird eine Liste der Module angezeigt, die geladen werden müssen. Geben Sie "yes" ein, damit sensors-detect diese Module in / etc / modules einfügt, oder bearbeiten Sie / etc / modules selbst.
    3. Lauf sudo service module-init-tools restart. Dadurch werden die Änderungen gelesen, an denen Sie Änderungen vorgenommen haben /etc/modules In Schritt 3, und fügen Sie die neuen Module in den Kernel ein.
      • Hinweis: Wenn Sie Ubuntu 13.04 oder höher ausführen, sollte dieser 3. Schritt Befehl durch ersetzt werden sudo service kmod start.
  3. Konfigurieren Lüftersteuerung

    1. Im Terminaltyp sudo pwmconfig . Dieses Skript stoppt jeden Lüfter für 5 Sekunden, um herauszufinden, welche Lüfter von welchem ​​PWM-Handle gesteuert werden können. Nachdem das Skript alle Lüfter durchlaufen hat, können Sie konfigurieren, welcher Lüfter welcher Temperatur entspricht.
    2. Sie müssen angeben, welche Sensoren verwendet werden sollen. Das ist ein bisschen schwierig. Wenn Sie nur einen Lüfter haben, stellen Sie sicher, dass Sie einen Temperatursensor für Ihren Kern verwenden, um die Lüfterkontrollgeschwindigkeit zu aktivieren.
    3. Führen Sie die Eingabeaufforderungen aus, und speichern Sie die Änderungen am Standardspeicherort.
    4. Nehmen Sie Anpassungen zur Feinabstimmung vor /etc/fancontrol und benutzen sudo service fancontrol restart um Ihre Änderungen zu übernehmen. (In meinem Fall setze ich das Intervall auf 2 Sekunden.)
  4. Konfiguration Lüftersteuerung Bedienung

    1. Lauf sudo service fancontrol start. Dadurch wird der Fancontrol-Dienst beim Systemstart automatisch ausgeführt.

In meinem Fall /etc/fancontrol für CPU habe ich benutzt:

Settings for hwmon0/device/pwm2:  
Depends on hwmon0/device/temp2_input  
Controls hwmon0/device/fan2_input  
MINTEMP=40  
MAXTEMP=60  
MINSTART=150  
MINSTOP=0  
MINPWM=0  
MAXPWM=255 

127
2018-01-08 16:38



Ich habe versucht, Ihrer Anleitung zu folgen, bin aber mit diesem Fehler in Schritt drei stecken geblieben: / usr / sbin / pwmconfig: Es sind keine pwm-fähigen Sensormodule installiert - tamale
Ich hatte das gleiche Problem mit pwmconfig, bis ich sudo sensors-detect ausgeführt habe - Gearoid Murphy
Was tun, wenn sudo sensors-detect keine Sensoren liefert? -> Leider wurden keine Sensoren gefunden. Entweder hat Ihr System keine Sensoren, oder sie werden nicht unterstützt, oder sie sind an einen I2C- oder SMBus-Adapter angeschlossen, der nicht unterstützt wird. Wenn Sie herausfinden, welche Chips auf Ihrem Board sind, überprüfen Sie lm-sensors.org/wiki/Devices für den Fahrerstatus. - H3R3T1K
Wenn Sie Probleme haben, überprüfen Sie Ihren dmesg auf Fehlermeldungen. In meinem Fall verhinderten kürzliche Änderungen am Kernel das Laden des erforderlichen Treibers, und ich musste hinzufügen acpi_enforce_resources=lax zu meinen Kernel-Optionen, um die alte Funktionalität zurück zu bekommen. Siehe auch: goo.gl/tUcr36 - bukzor
Ich habe das ausprobiert und komme nicht weiter als sudo pwmconfig, weil ich bekomme: "Es sind keine pwm-fähigen Sensormodule installiert". Dies ist der Fall, nachdem der Sensor-Detect-Befehl einen digitalen Intel-Thermosensor findet. Ich habe auch diesen Kernel-Parameter ausprobiert. Kann jemand eine Lösung vorschlagen? - Sman789


Wenn Sie eine besitzen ThinkPadEs gibt ein Stück Software namens thinkfan das macht genau das. Wie der Name schon sagt, ist es speziell für ThinkPads (thinkpad_acpi).

Das thinkfan Software ist in den Standard-Ubuntu-Software-Repositories verfügbar, erfordert jedoch einige Konfigurationsschritte.

Hier ist eine einfache Schritt-für-Schritt-Anleitung:

http://staff.science.uva.nl/~kholshei/thinkfan_guide/

(das ist im Grunde eine übersetzte Version dieses deutschen Leitfadens: http://thinkwiki.de/Thinkfan)


Relevante Informationen vom Post:

Schritt 1. Installieren Sie die thinkfan Software und die Sensoren:

sudo apt-get install thinkfan lm-sensors

Schritt 2. Stellen Sie sicher, dass der Daemon den Lüfter steuert, indem Sie die Datei thinkpad.conf bearbeiten:

sudo nano /etc/modprobe.d/thinkfan.conf

indem Sie die folgende Zeile hinzufügen:

options thinkpad_acpi fan_control=1

Schritt 3. Lassen Sie den Daemon beim Start automatisch laden, indem Sie die Datei bearbeiten:

sudo nano /etc/default/thinkfan

Stellen Sie sicher, dass die START-Taste auf "yes" gesetzt ist, d. h. es sollte eine Zeile sein, die besagt:

START=yes

Schritt 4. Erkennen Sie die Sensoren Ihres Laptops:

sudo sensors-detect

und wählen Sie einfach die Standardantworten, wenn Sie dazu aufgefordert werden, indem Sie die Eingabetaste drücken.

Schritt 5. Laden Sie die neuen Module. Von ubuntu 13.10 ist das erledigt von:

sudo service kmod start

während für vorherige Versionen wie 13.04 Sie stattdessen tun müssen:

sudo service module-init-tools start

Schritt 6. Finde heraus, welche Sensoren benutzt werden:

sensors

(die, die 0 Grad anzeigen, werden nicht verwendet, ich weiß nicht, warum diese auch "erkannt" werden). Denken Sie daran, welche in Verwendung sind.

Schritt 7. Finden Sie die vollständigen Pfade dieser Sensoren heraus:

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

Die Ausgabe sollte eine Liste von Pfaden wie / sys / devices / ... sein.

Schritt 8. Kopieren Sie die Pfade zu den Sensoren in die Konfigurationsdatei /etc/thinkpad.conf. Öffnen Sie dazu zuerst die Datei:

sudo nano /etc/thinkfan.conf

Es sollte schon eine Zeile wie sein

#sensor /proc/acpi/ibm/thermal (0, 10, 15, 2, 10, 5, 0, 3, 0, 3) 

(Das # -Zeichen bedeutet, dass diese Zeile auskommentiert ist). Füge eine Zeile hinzu, die mit dem Sensor beginnt (ohne das # -Zeichen) und kopiere deinen ersten Sensor. Wiederholen Sie dies, wenn Sie mehr als einen Sensor haben. Auf meinem Rechner ergibt sich beispielsweise die Ausgabe in Schritt 7

/sys/devices/virtual/hwmon/hwmon0/temp1_input
/sys/devices/platform/thinkpad_hwmon/temp3_input
/sys/devices/platform/thinkpad_hwmon/temp4_input
/sys/devices/platform/thinkpad_hwmon/temp5_input
/sys/devices/platform/thinkpad_hwmon/temp6_input
/sys/devices/platform/thinkpad_hwmon/temp7_input
/sys/devices/platform/thinkpad_hwmon/temp1_input
/sys/devices/platform/thinkpad_hwmon/temp8_input
/sys/devices/platform/thinkpad_hwmon/temp2_input
/sys/devices/platform/coretemp.0/temp4_input
/sys/devices/platform/coretemp.0/temp2_input 

Die, die in meiner Maschine verwendet werden, sind diejenigen in der ersten und der letzten zwei Zeilen, also fügte ich die drei Zeilen hinzu:

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

Schritt 9. Schließlich können wir die Lüfterstufen in der Konfigurationsdatei einstellen. Öffnen Sie die Datei /etc/thinkpad.conf, falls sie noch nicht geöffnet war.

sudo nano /etc/thinkfan.conf

Die Lüfterstufen, die ich auf meinem ThinkPad x201 verwende, sind:

(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767) 

Die letzte Zeile stellt die volle Lüftergeschwindigkeit sicher (127 = "ausgekuppelt", d. H. Ungeregelt). Sie können mit diesen Levels herumspielen, um Ihre Bedürfnisse / Wünsche zu erfüllen, aber bitte seien Sie vorsichtig!

Schritt 10 Starten Sie neu. Alles sollte jetzt funktionieren. Um zu überprüfen, ob thinkpad korrekt ausgeführt wird, verwenden Sie

sudo thinkfan -n

was thinkfan im ausführlichen Modus startet. Vielleicht möchten Sie den Thinkfan-Daemon zuerst stoppen:

sudo /etc/init.d/thinkfan stop

Wenn Sie den thinkfan-Daemon erneut starten möchten, geben Sie Folgendes ein:

sudo /etc/init.d/thinkfan start

Um zu vervollständigen, ist meine /etc/thinkfan.conf Konfigurationsdatei:

# IMPORTANT:
#
# To keep your HD from overheating, you have to specify a correction value for
# the sensor that has the HD's temperature. You need to do this because
# thinkfan uses only the highest temperature it can find in the system, and
# that'll most likely never be your HD, as most HDs are already out of spec
# when they reach 55 °C.
# Correction values are applied from left to right in the same order as the
# temperatures are read from the file.
#
# For example:
# sensor /proc/acpi/ibm/thermal (0, 0, 10)
# will add a fixed value of 10 °C the 3rd value read from that file. Check out
# http://www.thinkwiki.org/wiki/Thermal_Sensors to find out how much you may
# want to add to certain temperatures.

# Syntax:
# (LEVEL, LOW, HIGH)
# LEVEL is the fan level to use (0-7 with thinkpad_acpi)
# LOW is the temperature at which to step down to the previous level
# HIGH is the temperature at which to step up to the next level
# All numbers are integers.
#

# I use this on my T61p:
#sensor /proc/acpi/ibm/thermal (0, 10, 15, 2, 10, 5, 0, 3, 0, 3)

#(0, 0, 55)
#(1, 48, 60)
#(2, 50, 61)
#(3, 52, 63)
#(4, 56, 65)
#(5, 59, 66)
#(7, 63, 32767)


# My settings for my ThinkPad X201: (kris)

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, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767)

34
2018-05-14 15:54



Ein Kommentar: Sie möchten eine größere Überlappung der Temperaturwerte als in der Tabelle auskommentiert haben. Vor allem im Bereich 45-55. Ansonsten bleibt die Lüfterdrehzahl konstant. Das ist sehr beunruhigend. (Konstantes Lüftergeräusch stört nicht so sehr wie schwankendes Geräusch.) - HongboZhu
Wir (die Linux-Community) sind wirklich sauer auf UX. :( Das Einstellen einer Lüftergeschwindigkeit sollte kein 10-stufiger Prozess sein. - Alexander
@Alexander Wenn Sie sich darüber stark fühlen, können Sie ein kleines Programm schreiben und pflegen, um diesen Prozess zu automatisieren. - Kris
@Kris Ich wäre eher geneigt, das ursprüngliche Programm so zu ändern, dass es keinen unsinnigen Konfigurationsprozess gibt. Ach, ich habe kein Thinkpad, ich bin gerade an diesem Post vorbeigekommen und habe nach Möglichkeiten gesucht, um die Lüfter zu steuern. - Alexander
/etc/modprobe.d/thinkfan.conf  existiert nicht in meinem Ubuntu 14.04. Was jetzt? - Youda008


Für mehrere Dell-Computer können Sie das i8kutils-Paket installieren:

sudo apt install i8kutils

Wenn Sie ein nicht getestetes Dell (wie mein Dell XPS 14z) haben, müssen Sie möglicherweise das Laden des Kernelmoduls erzwingen:

sudo modprobe i8k force=1

12
2018-01-18 14:28



Ich habe Dell XPS 14 L421X. <code> Sensoren </ code> zeigten keine Fans. Nach der Installation des i8kutils-Pakets erhalte ich Sensoren coreTemp-isa-0000 Adapter: ISA-Adapter Physikalische ID 0: + 54,0 ° C (hoch = + 87,0 ° C, kritisch = + 105,0 ° C) Kern 0: + 50,0 ° C (hoch = + 87.0 ° C, kritische Temperatur = + 105.0 ° C) Kern 1: + 52.0 ° C (hoch = + 87.0 ° C, kritische Temperatur = + 105.0 ° C) i8k-virtual-0 Adapter: Virtuelles Gerät Rechter Lüfter: 0 RPM CPU: + 55,0 ° C - philcolbourn
Funktioniert das für HP? - Immortal Player
@ unsterblicher Spieler, ich denke es wird nicht. Das Kernel-Modul wurde speziell für Dell-Maschinen entwickelt. - morhook


Installieren und konfigurieren Sie das LM-Sensoren und Lüftersteuerung Pakete:

sudo apt-get install lm-sensors fancontrol

Die Dokumentation für die Konfiguration finden Sie auf ihren man-Seiten.

Dies ist eine Funktion, die von einem ACPI-konformen BIOS bereitgestellt werden soll, aber es scheint, dass die meisten Motherboard-Hersteller sich nicht darum kümmern, dem Standard zu folgen.


7



Kannst du detailliertere Anweisungen zur Installation und Verwendung geben? - Stefano Palazzo♦
Sie finden das auf der Manpage oder unter www.lm-sensors.org. - psusi
Ich weiß, ich dachte nur, diese Antwort könnte besser sein :) - Stefano Palazzo♦
Der Link, den @psusi gab, funktioniert nicht, der neue Link ist hier: github.com/groeck/lm-sensors - Svetlana Belkin
Ich denke du hast einen falsch geschriebenen Benutzernamen. - markroxor