Wie kann ich einen Lüfter manuell vom Terminal aus steuern?

11445
jbangerter

Ich versuche, die Lüftergeschwindigkeit auf meinem Desktop zu steuern, und ich würde mich über Ihre Hilfe freuen.

Ziel: Verwenden Sie ein Skript, um die Lüftergeschwindigkeit auf meinem Computer zu steuern.

Motivation: Die eingebetteten "Smart Fan" -Einstellungen des BIOS sind nicht intelligent genug, um den Lüfter zu beschleunigen, wenn das System heiß wird, was zu einem Absturz führt, wenn eine der Temps den Schwellenwert überschreitet.

Aufbau:

  • Centos 6,3
  • Acer Veriton VN281G-UA425L
  • abgekürzte lspci-Ausgabe

    00:00.0 Host bridge: Intel Corporation N10 Family DMI Bridge 00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02) 00:1c.2 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 3 (rev 02) 00:1c.3 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 4 (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02) 00:1f.2 IDE interface: Intel Corporation N10/ICH7 Family SATA Controller [IDE mode] (rev 02) 00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02) 
  • abgekürzt / proc / cpuinfo

    processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 28 model name : Intel(R) Atom(TM) CPU D425 @ 1.80GHz 
  • Grub-Konfiguration

    title CentOS (2.6.32-279.5.1.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-279.5.1.el6.x86_64 ro root=/dev/mapper/vg_hadean-lv_root rd_NO_LUKS rd_LVM_LV=vg_hadean/lv_root LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_hadean/lv_swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /initramfs-2.6.32-279.5.1.el6.x86_64.img 

Bisherige Versuche:

  • Run lm_sensors lm_sensors konnte nur den Temperaturausgang finden
  • Führe yum search fan keine Übereinstimmungen aus
  • add acpi und acpi = strict zu Kernel-Optionen, es ist nichts passiert
  • check / proc / acpi / fan das Verzeichnis ist leer

Ich lief acer_ec.pl regsund die Ausgabe war folgende:

 00 01 02 03 04 05 06 07 | 08 09 0A 0B 0C 0D 0E 0F __ __ __ __ __ __ __ __ | __ __ __ __ __ __ __ __ 00 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  10 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  20 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  30 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  40 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  50 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  60 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  70 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  80 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  90 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  A0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  B0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  C0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  D0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  E0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255 255 255  F0 | 255 255 255 255 255 255 255 255 | 255 255 255 255 255 255  

Ich weiß nicht, ob es so aussehen soll, aber hier scheint etwas nicht in Ordnung zu sein.


Ich habe einen Link gefunden, der mich dazu inspiriert hat, pwmconfig auszuprobieren. Die Ausgabe war: There are no pwm-capable sensor modules installed Ich werde versuchen herauszufinden, wie ich diese Module installieren kann.


Ich setze die Einstellung "Smart Fan" zurück und macht mir vorerst keine Probleme mehr. Ich weiß nicht, wie sich das auswirken könnte, aber wir werden sehen, was passiert, wenn ich anfange, das System wieder zu belasten.

Ich habe immer noch nicht die richtigen Patches für den Kernel gefunden (oder wenn das überhaupt das Problem ist). Wenn das Problem weiterhin besteht, versuche ich, den Kernel so zu aktualisieren, dass er die ACPI-Unterstützung enthält. Mit dem Hardwaretool von einem arch linux iso habe ich herausgefunden, dass ich das P01-A3LBIOS, Release 4/6/2011, Version 8.16, auf einem Acer Veriton N281G- Motherboard verwende.

Wenn das nicht funktioniert, werde ich es vielleicht einfach ausrangieren und zu Debian oder Arch wechseln.

5
Stellen Sie sicher, dass der vorhandene Luftstrom nicht verstopft oder blockiert wird: Haben Sie versucht, das System mit einer Druckluftdose zu durchlaufen und sicherzustellen, dass es staubfrei ist? Solange der CPU-Lüfter läuft, hoffe ich, dass sich die CPU nicht in der Nähe des Temp-Cutoff-Punkts befindet. Sitzt das System in der Sonne? Die meisten Systeme, die ich verwendet habe, bleiben gut 50C von der Abschalttemperatur entfernt (dies ist wiederum ein ultrakompakter). Darth Android vor 11 Jahren 0
The fan runs fine. In fact, when I disable the "Smart Fan" setting, the fan runs full speed with no problems. The problem seems with the embedded controller. See the output of `acer_ec.pl regs` above. I don't know which registers correspond with the fan thresholds, but they're all 255. jbangerter vor 11 Jahren 0

3 Antworten auf die Frage

4
Bytemain

Suchen Sie nach dem Skript acer_ec.pl, das den Lüfter über das Register des integrierten Controllers steuern kann. Es funktioniert auch auf anderen PCs.

Gosh Gee Willikers Batman! My fan temperature threshold was set to 255 C! Thanks, I'll try setting the threshold to something lower and let you know how it goes! :) I presume that I will need to re-enable the smart fan setting. I would upvote you, but I don't have enough reputation, yet. Also, I see here that there is a way to set the threshold for each fan level. jbangerter vor 11 Jahren 0
First, I'll say that this is an awesome script, and I'm grateful to the people who wrote it. I found that the script misleadingly claims to allow a user to modify the thresholds on various fan levels. I say misleadingly, because when I entered in the command as advertised, I was told they were the `wrong arguments!` Further inspection revealed that there was no such processing in the switch at the end of the file. I tried printing out my registers to see where the values should be written, but ended up with the result in my latest edit. Do you know how I can manually set those thresholds? jbangerter vor 11 Jahren 0
Haben Sie Embedded Control-Zugriff unter Linux installiert? Es muss zuerst aktiviert werden. Oder versuchen Sie es mit RW unter Windows, um Ihre eingebettete Steuerung zu überprüfen. Ich habe ein Kernel-Modul für meinen Laptop geschrieben: http://www.chihoang.de/code-schnipsel/amilo-xa-3530/fsc-xa-3530-fan-control-v01.html. Ich hoffe, es hilft? Bytemain vor 11 Jahren 0
Thanks for your help. I tried pwmconfig and found that `There are no pwm-capable sensor modules installed`. I guess I will be installing some sensor modules. jbangerter vor 11 Jahren 0
2
terdon

Schauen Sie sich auch fancontrol und meine Antwort auf diesen Beitrag an.

Thanks, I forgot to mention that I tried that, but fancontrol isn't available in my repository. I don't know if it's compatible with centos, but I'll see if I can add it. jbangerter vor 11 Jahren 0
0
Mark Lakata

Es gibt ein beliebteres "Fancontrol" im lm-sensors Wiki . Der fancontrol-Link in der anderen Antwort ist ein anderes Skript (viel experimenteller). Diese fancontrol beinhaltet das pwmconfigDienstprogramm, das Ihre Temperatursensoren und Lüftersteuerungen erkennt .