Fan hızı nasıl kontrol edilir?

Bilgisayarın fan hızını nasıl kontrol edebilirim?

Windows'da harika bir program var Hızfan.

Başlamadan önce not:

Bu işlevsellik hem donanımınıza hem de yazılımınıza bağlıdır. Donanımınız fan hızı denetimlerini desteklemiyorsa veya işletim sistemine göstermiyorsa, bu çözümü kullanamamanız çok olasıdır. Eğer öyleyse, ancak yazılım (aka çekirdek) onu nasıl kontrol edeceğini bilmiyorsa, şanssızsınız demektir.


  1. Yüklemek lm sensörleri ve fancontrol paketler.

  2. Yapılandırmak lm sensörleri aşağıdaki gibi:

    1. Terminal tipinde sudo sensors-detect ve tüm EVET / hayır sorularına EVET cevabını verin.
      (Bu, sisteminize zarar verebilir veya sistemin çökmesine neden olabilir. Birçok sistem için güvenlidir. Bu işlemin sisteminize kalıcı olarak zarar vermeyeceğinin garantisi yoktur, sadece böyle kritik bir arıza olasılığının olduğunu düşünüyorum gerçekten çok düşük. Sistem yapılandırmasını işlemeden önce olası çökmeler / donmalar / yeniden başlatmalar için tüm çalışmalarınızı kaydetmek her zaman iyi bir fikirdir. Emin değilseniz, yorumları okuyun ve bir web'de arama yapmaya çalışın ve her şeyi EVET yapmadan önce üst düzey bir genel bakış elde edin, belki de evetlerinizle seçici olmak hala yeterli olacaktır)

    2. Sensors-detect'in sonunda, yüklenmesi gereken modüllerin bir listesi görüntülenecektir. Sensörlere sahip olmak için "evet" yazın - bu modülleri / etc / modüllerine yerleştirin veya / etc / modüllerini kendiniz düzenleyin.

    3. Koşmak sudo service kmod start Bu, yaptığınız değişiklikleri okuyacaktır /etc/modules 3. adımda ve yeni modülleri çekirdeğe yerleştirin.

      • Not: Ubuntu 12.04 veya daha düşük bir sürümünü çalıştırıyorsanız, bu 3. adım komutu şu şekilde değiştirilmelidir: sudo service module-init-tools restart
  3. Yapılandırmak fancontrol

    1. Terminal tipinde sudo pwmconfig . Bu komut dosyası, hangi fanların hangi PWM kolu tarafından kontrol edilebileceğini bulmak için her fanı 5 saniye durduracaktır. Komut dosyası tüm fanlar arasında dolaştıktan sonra, hangi fanın hangi sıcaklığa karşılık geldiğini yapılandırabilirsiniz.
    2. Hangi sensörlerin kullanılacağını belirtmeniz gerekecektir. Bu biraz zor. Yalnızca bir fanınız varsa, fancontrol hızını temel almak için çekirdeğiniz için bir sıcaklık sensörü kullandığınızdan emin olun.
    3. İstemleri çalıştırın ve değişiklikleri varsayılan konuma kaydedin.
    4. İnce ayar yapmak için ayarlamalar yapın /etc/fancontrol ve kullan sudo service fancontrol restart değişikliklerinizi uygulamak için. (Benim durumumda aralığı 2 saniyeye ayarlıyorum.)
  4. Kurmak fancontrol hizmet

    1. Koşmak sudo service fancontrol start. Bu aynı zamanda fancontrol hizmetinin sistem başlangıcında otomatik olarak çalışmasını sağlayacaktır.

Benim durumumda /etc/fancontrol CPU için kullandım:

Hwmon0 / device / pwm2 için ayarlar:
(Hwmon0 / device/ temp2_ınput'a bağlıdır) (Hwmon0/device/fan2_ınput'u kontrol eder)

  INTERVAL=2  MINTEMP=40    MAXTEMP=60    MINSTART=150    MINSTOP=0    MINPWM=0    MAXPWM=255 

ve farklı bir sistemde öyle:

  INTERVAL=10  DEVPATH=hwmon1=devices/platform/coretemp.0 hwmon2=devices/platform/nct6775.2608  DEVNAME=hwmon1=coretemp hwmon2=nct6779  FCTEMPS=hwmon2/pwm2=hwmon1/temp2_input  FCFANS=hwmon2/pwm2=hwmon2/fan2_input  MINTEMP=hwmon2/pwm2=49  MAXTEMP=hwmon2/pwm2=83  MINSTART=hwmon2/pwm2=150  MINSTOP=hwmon2/pwm2=15  MINPWM=hwmon2/pwm2=14  MAXPWM=hwmon2/pwm2=255

burada ayarlar ve gerçekte ne yaptıkları hakkında bazı yararlı bilgiler var mı

Eğer bir tane varsa ThinkPad adında bir yazılım parçası var. thinkfan bu tam olarak bunu yapar. Adından da anlaşılacağı gibi, özellikle thinkpad'ler için üretilmiştir (thinkpad_acpi).

Bu thinkfan yazılım standart ubuntu yazılım depolarında mevcuttur, ancak yapılandırmak için birkaç adım gerekir.

İşte kolay bir adım adım kılavuz:

http://www.lxle.net/forums/discussion/821/how-to-set-up-thinkfan-on-a-lenovo-thinkpad-t430/p1

(temel olarak bu Almanca kılavuzun çevrilmiş bir versiyonudur:http://thinkwiki.de/Thinkfan)


Gönderiden İlgili Bilgiler:

Adım 1. Thinkfan yazılımını ve sensörleri yükleyin:

sudo apt-get install thinkfan lm-sensors

2. adım. Daemon'un thinkpad'i düzenleyerek fanı kontrol ettiğinden emin olun.conf dosyası:

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

aşağıdaki satırı ekleyerek:

options thinkpad_acpi fan_control=1

Adım 3. Dosyayı düzenleyerek daemonun başlangıçta otomatik olarak yüklenmesini sağlayın:

sudo nano /etc/default/thinkfan

başlat tuşunun evet olarak ayarlandığından emin olun, yani yazan bir satır olmalıdır:

START=yes

Adım 4. Dizüstü bilgisayarınızın sensörlerini algıla:

sudo sensors-detect

ve Enter tuşuna basmanız istendiğinde varsayılan yanıtları seçmeniz yeterlidir.

Adım 5. Yeni modülleri yükleyin. Ubuntu 13.10'dan itibaren bu:

sudo service kmod start

13.04 gibi önceki sürümler için bunun yerine yapmanız gerekecek:

sudo service module-init-tools start

Adım 6. Hangi sensörlerin kullanıldığını öğrenin:

sensors

(0 dereceyi gösterenler kullanımda değil, bunların neden "algılandığını" da bilmiyorum). Hangilerinin kullanımda olduğunu unutmayın.

Adım 7. Bu sensörlerin tam yollarını öğrenin:

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

Çıktı, /sys/devices / gibi yolların bir listesi olmalıdır...

Adım 8. Sensörlere giden yolları /etc/thinkpad yapılandırma dosyasına kopyalayıp yapıştırın.conf. Bunu yapmak için önce dosyayı açın:

sudo nano /etc/thinkfan.conf

Zaten böyle bir çizgi olmalı

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

(# -sembolü, bu satırın yorumlandığı anlamına gelir). Sensörle başlayan bir satır ekleyin (# sembolü olmadan) ve önce sensörü kopyalayıp yapıştırın. Birden fazla sensörünüz varsa bunu tekrarlayın. Örneğin, makinemde, 7. adımdaki çıktı verir

/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 

Makinemde kullanımda olanlar ilk ve son iki satırdakiler, bu yüzden üç satırı ekledim:

sensor /sys/devices/virtual/hwmon/hwmon0/temp1_inputsensor /sys/devices/platform/coretemp.0/temp4_inputsensor /sys/devices/platform/coretemp.0/temp2_input 

Adım 9. Son olarak, yapılandırma dosyasında fan hızı seviyelerini ayarlayabiliriz. /Etc / thinkpad'i açın.conf dosyası zaten açık değilse.

sudo nano /etc/thinkfan.conf

ThinkPad x201'imde kullandığım fan seviyeleri:

(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) 

Son satır tam fan hızı sağlar (127 = "devre dışı", yani düzenlenmemiş). İhtiyaçlarınıza / isteklerinize uyacak şekilde bu seviyelerle uğraşabilirsiniz, ancak lütfen dikkatli olun!

Adım 10. Yeniden başlat. Artık her şey yürümeli. Thinkpad'in doğru çalışıp çalışmadığını kontrol etmek için

sudo thinkfan -n

bu da thinkfan'ı ayrıntılı modda başlatır. Önce thinkfan daemonunu durdurmak isteyebilirsiniz:

sudo /etc/init.d/thinkfan stop

Thinkfan daemonunu yeniden başlatmak isterseniz şunu yazın::

sudo /etc/init.d/thinkfan start

Sadece tam olmak için, benim / etc / thinkfan'ım.conf yapılandırma dosyası:

# 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_inputsensor /sys/devices/platform/coretemp.0/temp4_inputsensor /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)

Birkaç Dell bilgisayarı için i8kutils paketini yükleyebilirsiniz:

sudo apt install i8kutils

Test edilmemiş bir Dell'iniz varsa (Dell XPS 14z, Dell XPS 15 9550 veya hatta Alienware M15 R4 gibi), çekirdek modülünün yüklenmesini zorlamanız gerekebilir:

sudo modprobe i8k force=1

Fanları kontrol etmek istiyorsanız daha kapsamlı bir rehber izlemeniz gerekebilir: Fan, Dell G5'te tam hız ile kapalı arasında geçiş yapar

Yükleme ve yapılandırma lm sensörleri ve fancontrol paketler:

sudo apt-get install lm-sensors fancontrol

Bunları yapılandırmaya ilişkin belgeler man sayfalarında mevcuttur.

Bu, ACPI uyumlu bir BIOS tarafından sağlanması gereken bir işlevdir, ancak çoğu anakart satıcısının standardı takip etmekten rahatsız olmadığı görülmektedir.

İşte bir güncellenmiş cevap, dayalı thinkfan'ı öneren cevap ancak Ubuntu 19.04 ile ve ayrıca sadece thinkpad'lerden başka bilgisayarlarda çalışmak.

1. Kurulum

Aşağıdaki talimatlar, aşağıdaki özelliklere sahip herhangi bir ThinkPad için geçerlidir: /proc/acpi/ibm/fan ve /proc/acpi/ibm/thermal "eski" cihazlar. Bu, yüklemek zorunda kalmanızı önler lm-sensors paket.

Ancak, yine de yüklemeyi tercih edebilirsiniz lm-sensors. Eski cihazlarla "0-7 ve 127" sabit adımlarından ziyade 256 PWM adımlarında, fanlarınız üzerinde size daha fazla sıcaklık sensörü ve daha ince taneli kontrol sağlayacaktır. Ayrıca, o zamandan beri thinkfan şimdi ile çalışabilir lm-sensors sensörler, artık IBM / Lenovo ThinkPad bilgisayarları için özel değil. Lütfen şu adrese bakın man thinkfan bu "genişletilmiş" sensör cihazlarını kullanmak için. Ayrıca, güncel bilgiler var alman Thinkwiki'de.

  1. Gerekli paketi yükleyin:

    sudo apt install thinkfan
  2. Aşağıdaki satırı ekleyin /etc/modprobe.d/thinkfan.conf:

    options thinkpad_acpi fan_control=1
  3. Yapılandırma thinkfan sistem başlangıcında otomatik olarak başlatılacak servis:

    1. Satır ekleme START=yes -e doğru /etc/default/thinkfan

    2. Aşağıdaki komutu yürütün (kaynak):

      sudo systemctl enable thinkfan.service
  4. Adapte olmak /etc/thinkfan.conf istediğiniz cihazlara ve fan seviyelerine doğru işaretçilerle. Buradaki yorumlar dokümantasyon sağlar. Mirası olan herhangi bir Thinkpad'de fan ve thermal aygıtlar, aşağıdakiler iyi bir başlangıç noktası sağlamalıdır (sabit disk için de güvenli olmalıdır, daha fazla bilgi için dosyadaki yorumlara bakın). Bunun yeni anahtar kelimeler kullandığını unutmayın - diğer cevap şimdi kullanımdan kaldırıldı.

    tp_fan /proc/acpi/ibm/fantp_thermal /proc/acpi/ibm/thermal(0, 0, 47)(1, 43, 52)(2, 48, 55)(3, 51, 58)(4, 54, 63)(5, 59, 70)(6, 66, 79)(7, 74, 92)(127, 85, 32767) 

2. Test

Kurulumunuzu test etmek için (yeniden başlatmadan sonra) aşağıdakileri yapabilirsiniz:

  • Bir terminal penceresinde, çalıştır thinkfan daemonize olmayan modda, mesajlarını görebilmeniz için:

    sudo service thinkfan stop && sudo thinkfan -n
  • Başka bir terminal penceresinde, mevcut sıcaklık değerlerine göz kulak olun, farklıysa sıcaklık probu cihazınızı besleyin:

    while true; do sleep 1; cat /proc/acpi/ibm/thermal; done
  • Başka bir terminal penceresinde, cpu'da bir miktar ısı yapın (ve bununla kesintiye uğratın Ctrl + C termal yönetimdeki bir şeyin beklendiği gibi çalışmaması durumunda):

    sudo apt install stress-ngstress-ng --cpu-1

Bilgisayarınızın UEFI kurulumuna (veya BIOS kurulumuna) bakmayı deneyin. Fanınızı yerleştirebileceğiniz fan kontrolü için bir ayar olabilir Silent Mode, Performance Mode, Full Speed, Customize, vb.

UEFI ayarlarına nasıl erişilir: BİLGİSAYARINIZI yeniden başlatın ve bunları girmek için anahtar muhtemelen köşelerden birinde görünecektir (örn. Press F2 to enter UEFI setup)

ASRock UEFI setup for fan control

Dell sunucumu serin ve sessiz tutmak için her birkaç saniyede bir çalıştırdığım komut dosyası. Donanımınız için get_temp güncelleştirin.

#!/bin/env python3import osimport jsonMIN_FAN = 5MAX_FAN = 100MIN_TEMP = 50 # fans at min at this tempMAX_TEMP = 80 # fans at max at this tempTEMP_POW = 3 # decrease for cooler server, increase for quiterdef get_temp():    sensors = json.loads(os.popen('/usr/bin/sensors -j').read())    temp0 = sensors["coretemp-isa-0000"]["Package id 0"]["temp1_input"]    temp1 = sensors["coretemp-isa-0001"]["Package id 1"]["temp1_input"]    return max(temp0, temp1)def determine_fan_level(temp):    x = min(1, max(0, (temp - MIN_TEMP) / (MAX_TEMP - MIN_TEMP)))    return int(min(MAX_FAN, max(MIN_FAN, pow(x, TEMP_POW)*(MAX_FAN-MIN_FAN) + MIN_FAN)))def set_fan(fan_level):    # manual fan control    os.system("ipmitool raw 0x30 0x30 0x01 0x00")    # set fan level    cmd = "ipmitool raw 0x30 0x30 0x02 0xff " + hex(fan_level)    os.system(cmd)temp = get_temp()fan = determine_fan_level(temp)print("temp", temp, "fan", fan)set_fan(fan)

Linux’ta ‘fancontrol, 'pwmconfig' kullanılarak yapılandırılmıştır. CPU ve GPU yükü altındaki sensörleri gözlemlemek için izleme sensörlerinikullanın.ARALIK = 1ile sırasıylaMİNTEMPveMAXTEMP’ değerlerini ayarlamak için bu değerleri boşta ve tam yükte kullanın. Bu, yük arttıkça hayranlarınızı gerçek zamanlı olarak artırır. Bu, daha fazla ayarlama için bir temel sağlayan en aktif soğutmadır. 'Pwmconfig’i bir kez çalıştırın ve ardından '/ etc /fancontrol’ü doğrudan düzenleyin. Her çimdiklemeden sonra `sudo service fancontrol restart’ı çalıştırın.

ATI kartları için basit cron çözümünü buraya koydum fan - How can I see the GPU temperture of my ATI graphics card? - Ask Ubuntu