Thinkfan

Z ThinkPad-Wiki

To jest stara wersja. Czas edycji: 19:14, 17 maja 2011 przez Linrunner (Dyskusja | Wkład).
Przejdź do: nawigacja, szukaj

Spis treści

Wprowadzenie

thinkfan to proste oprogramowanie do sterowania wentylatorem dla Linuksa. Ten artykuł opisuje instalację i konfigurację dla Debiana i Ubuntu.

Wymagania

Od

  • Ubuntu 10.04 „Lucid Lynx” lub
  • Debian 6.0 „Squeeze”

thinkfan jest dostępny w repozytoriach dystrybucji.

Obsługiwane są wszystkie modele ThinkPad, w których można załadować moduł jądra thinkpad_acpi. Wyjątki:

  • seria SL: brak obsługi thinkpad_acpi
  • Seria L, Edge, X100e: wymaga Ubuntu 10.10 z jądrem 2.6.35 lub 10.04 z jądrem tp 2.6.32

Instalacja

Instalacja pakietu

Instalujemy pakiet

  • thinkfan

albo za pomocą menedżera pakietów, albo w terminalu

sudo apt-get install thinkfan

Wskazówka: sudo jest potrzebne tylko w Ubuntu; w Debianie wszystkie polecenia wywołuje się zamiast tego z powłoki roota.

Konfiguracja thinkpad_acpi

Aby sterowanie wentylatorem działało, moduł jądra thinkpad_acpi musi zostać załadowany z opcją fan_control=1. W tym celu należy utworzyć plik /etc/modprobe.d/thinkfan.conf z uprawnieniami roota

gksudo gedit /etc/modprobe.d/thinkfan.conf

i wpisać następującą treść

options thinkpad_acpi fan_control=1

Następnie ładujemy moduł ponownie

sudo modprobe -rv thinkpad_acpi
sudo modprobe -v thinkpad_acpi

Automatyczne uruchamianie

Aby thinkfan uruchamiał się automatycznie przy starcie systemu, należy edytować plik /etc/default/thinkfan z uprawnieniami roota i w poniższej linii zamienić no na yes:

START=yes

Konfiguracja progów temperatury

thinkfan nie ma interfejsu graficznego. Progi temperatury konfiguruje się w pliku tekstowym /etc/thinkfan.conf. Domyślne progi powinny działać w każdym ThinkPadzie. W razie potrzeby plik można edytować z uprawnieniami roota:

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

Każdy wiersz składa się z trzech wartości - ich znaczenie jest następujące (od lewej do prawej):

  • Poziom wentylatora 0 (wyłączony) - 7 (maks.)
  • Temperatura, po osiągnięciu której przy spadku temperatury poziom wentylatora jest zmniejszany o 1
  • Temperatura, po osiągnięciu której przy wzroście temperatury poziom wentylatora jest zwiększany o 1

Wskazówka: uwzględniana jest zawsze tylko najwyższa wartość ze wszystkich czujników temperatury wykrytych w systemie.

Po skonfigurowaniu progów można ręcznie uruchomić demon thinkfan

sudo /etc/init.d/thinkfan start

Wyświetlanie temperatur

W ThinkPadach wartości wszystkich czujników temperatury wyświetla się za pomocą

cat /proc/acpi/ibm/thermal

. Pierwsza wartość to zawsze CPU. Przyporządkowanie pozostałych czujników zależy od konkretnego modelu. Szczegóły można znaleźć tutaj.

Tryb testowy

Aby od razu obserwować skutki wprowadzonych ustawień, najpierw zatrzymujemy działający w tle demon thinkfan

sudo /etc/init.d/thinkfan stop

Następnie uruchamiamy thinkfan na pierwszym planie poleceniem

sudo thinkfan -n

Pojawia się następujące, ciągłe wyjście (przykład)

WARNING: Using default temperature inputs in /proc/acpi/ibm/thermal.
WARNING: You have not provided any correction values for any sensor, and your fan will only start at 55 °C. This can be dangerous for your hard drive.
Config as read from /etc/thinkfan.conf:
Fan level	Low	High
 0		0	55
 1		48	60
 2		50	61
 3		52	63
 4		56	65
 5		59	66
 7		63	32767

sleeptime=5, temp=50, last_temp=0, biased_temp=50 -> level=1
sleeptime=5, temp=60, last_temp=59, biased_temp=60 -> level=2
sleeptime=5, temp=61, last_temp=60, biased_temp=61 -> level=3
sleeptime=5, temp=52, last_temp=53, biased_temp=52 -> level=2
sleeptime=5, temp=50, last_temp=51, biased_temp=50 -> level=1

Test można zakończyć za pomocą Ctrl+C.

Rozwiązywanie problemów

Brak działania na X220, T420, L420 z Ubuntu 11.04 / jądrem 2.6.38

Objaw: przy ręcznym uruchomieniu thinkfan poleceniem

sudo /etc/init.d/thinkfan start

pojawia się następujący komunikat

/proc/acpi/ibm/thermal: No such file or directory

Przyczyna: czujniki temperatury zostały przeniesione w inne miejsce w sysfs i thinkfan ich nie rozpoznaje.

Rozwiązanie: dodaj następujący wiersz do /etc/thinkfan.conf (przed progami temperatur)

sensor /sys/class/hwmon/hwmon0/temp1_input 

Źródło rozwiązania obejściowego: Thinkpad-Forum

Linki

Źródło

  • Instrukcja (3. wpis) autorstwa jetronic na forum Thinkpad
Narzędzia osobiste
Think-Wiki