THINKFAN.CONF.LEGACY(5)

NUME
thinkfan.conf.legacy - vechea sintaxă de configurare, compatibilă cu versiunea anterioară, pentru thinkfan thinkfan(1)

DESCRIERE
Fișierul de configurare al «thinkfan» specifică una sau mai multe intrări de temperatură, exact un ventilator de controlat și nivelurile ventilatorului. Un nivel al ventilatorului asociază o anumită viteză a ventilatorului cu o limită inferioară și una superioară de temperatură. Dacă temperatura atinge limita superioară, se trece la următorul nivel al ventilatorului, iar dacă scade sub limita inferioară, se trece la nivelul anterior al ventilatorului. Limitele de temperatură pot fi fie o singură temperatură (modul simplu), fie constau din mai multe temperaturi (modul complex). În modul simplu, doar cea mai mare dintre toate temperaturile cunoscute este comparată cu limita superioară și inferioară. Dacă aveți dispozitive cu temperaturi foarte diferite (de exemplu, CPU vs. discuri dure mecanice), ar trebui să specificați valori de corecție pentru a egaliza intervalele de temperatură ale acestora sau, mai bine: utilizați modul complex. În modul complex, limitele superioară și inferioară ale fiecărui nivel de ventilator sunt specificate pentru fiecare senzor în parte. «thinkfan» trece apoi la următorul nivel al ventilatorului dacă este atinsă una dintre limitele superioare și la nivelul anterior al ventilatorului dacă toate temperaturile au scăzut sub limitele inferioare respective.

SENZORI TERMICI
Mai multe cuvinte cheie pentru senzori pot fi combinate într-un singur fișier de configurare, dar rețineți că ordinea este semnificativă în ceea ce privește limitele superioare și inferioare ale nivelului ventilatorului dacă utilizați modul complex. De exemplu, dacă /proc/acpi/ibm/thermal conține 16 temperaturi și specificați un senzor hwmon după instrucțiunea tp_thermal, senzorul hwmon va fi a 17-a temperatură. După fiecare rută a senzorului, se poate specifica o valoare de corecție opțională. Această valoare (poate fi negativă) se adaugă întotdeauna la citirea temperaturii de la acel senzor. Valorile de corecție trebuie specificate dacă utilizați Modul simplu cu componente care au o clasificare diferită a temperaturii, cum ar fi discurile dure și procesoarele. Rețineți totuși că Modul complex este, în general, soluția cea mai bună, deoarece vă oferă un control total asupra nivelurilor ventilatorului și a intervalelor de temperatură pentru fiecare senzor, în loc să adăugați doar o valoare fixă pentru a egaliza intervalele de temperatură.

tp_thermal /proc/acpi/ibm/thermal [ (valoare-corecție ...) ]
    Utilizează senzorii termici furnizați de modulul de nucleu thinkpad_acpi pe laptopurile thinkpad mai vechi. Aceștia se află în mod normal în /proc/acpi/ibm/thermal, astfel încât acest cuvânt cheie va fi utilizat cu greu cu alte rute. Acest fișier conține de obicei 8-16 temperaturi, dintre care unele pot fi rezervate pentru hardware detașabil sau complet neutilizate. Sloturile de temperatură neutilizate conțin întotdeauna valoarea -128. Deoarece acest fișier conține toate temperaturile pe care modulul thinkpad_acpi le cunoaște, nu poate exista mai mult de o instrucțiune tp_thermal într-un fișier de configurare.

hwmon ruta-sysfs [ (valoare-corecție) ]
    Utilizează o intrare de temperatură standard «hwmon» care poate fi furnizată de toate tipurile de controlori ai nucleului. ruta-sysfs este de obicei un fișier numit „temp*_input”, undeva sub „/sys”, astfel încât le puteți căuta, de exemplu, cu «find /sys -type f -name "temp*_input"». Fiecare dintre aceste fișiere conține câte o temperatură, așa că trebuie să adăugați o instrucțiune hwmon pentru fiecare dispozitiv a cărui temperatură doriți să o controlați.

atasmart ruta-dispozitiv [ (valoare-corecție) ]
    NOTĂ: disponibilă numai dacă «thinkfan» a fost compilat cu opțiunea USE_ATASMART activată.

    Citește temperatura direct de la un disc dur folosind S.M.A.R.T. Vedeți și opțiunea -d din thinkfan(1) care împiedică «thinkfan» să trezească discurile adormite (mecanice) pentru a le citi temperatura.

nv_thermal pci-bus-id [ (valoare-corecție) ]
    NOTĂ: disponibilă numai dacă «thinkfan» a fost compilat cu opțiunea USE_NVML activată.

    Citește temperatura unei plăci grafice nVidia din contolorul proprietar nVidia. Acest lucru nu funcționează cu controlorul Nouveau open-source, ci depinde în mod special de „libnvidia-ml.so”, care este de obicei instalat împreună cu controlorul binar nVidia. ID-ul pci-bus-id corect poate fi recuperat folosind, de exemplu, lspci cu: «lspci | grep -i vga». Majoritatea controlorilor grafici open-source (radeon, nouveau, posibil și alții) pot fi utilizați în schimb cu ajutorul cuvântului cheie hwmon descris mai sus.

VENTILATOARE
În prezent, «thinkfan» poate controla doar un singur ventilator la un moment dat. Teoretic, puteți rula mai multe instanțe ale programului simultan (cu mai multe fișiere de configurare) pentru a controla mai multe ventilatoare, dar acest lucru necesită activarea modului „DANGEROUS” (PERICULOS) și probabil va întrerupe majoritatea scripturilor de inițializare. Este o eroare să aveți mai mult de o declarație de ventilator pe fișier de configurare.

tp_fan /proc/acpi/ibm/fan
    Utilizează controlul ventilatorului furnizat de modulul de nucleu thinkpad_acpi, care trebuie să fie încărcat cu opțiunea fan_control=1. Ruta este definită de modulul de nucleu thinkpad_acpi și cu greu se poate schimba. Pe lângă nivelurile de ventilator de la 0 la 7, acesta acceptă, de asemenea, modurile disengaged (dezactivat) și auto.

    Modul auto ar trebui să delege controlul ventilatorului către firmware, astfel încât poate fi considerat ca un mod „implicit” care nu modifică comportamentul ventilatorului. Acest lucru este util, de exemplu, dacă doriți să modificați comportamentul ventilatorului doar la temperaturi ridicate și/sau scăzute.

    Modul disengaged (dezactivat) sau full-speed (viteză maximă) dezactivează efectiv limitatorul RPM al ventilatorului. Viteza ventilatorului va crește încet până când ventilatorul utilizează puterea electrică maximă disponibilă de la controlorul încorporat. Folosiți acest mod numai pentru a preveni supraîncălzirea potențial distructivă, deoarece face ca ventilatorul să funcționeze în afara specificațiilor și îi uzează rapid rulmenții.

pwm_fan ruta-sysfs
    Controlează un ventilator PWM sysfs. Mulți controlori «hwmon» care furnizează un fișier „temp*_input” permit, de asemenea, controlul ventilatorului, deși pot exista și controlori care sunt specifici fie pentru citirea temperaturii, fie pentru controlul ventilatorului. Puteți căuta un fișier de control PWM, de exemplu, cu «find /sys -type f -name "pwm?"». Rețineți că, în cazul PWM, nivelurile ventilatoarelor variază de obicei între 0 și 255, deși, pe lângă un fișier precum pwm1, pot exista și pwm1_min și pwm1_max care specifică limite diferite (limite-inferioare-adecvate sau recomandate?) pentru un anumit ventilator.

NIVELURILE VENTILATORULUI
Definirea nivelurilor ventilatoarelor este partea esențială a fișierului de configurare. Aici se utilizează intrările de temperatură definite anterior pentru a stabili limitele inferioare și superioare ale vitezelor ventilatorului. Nu puteți amesteca nivelurile simple ale ventilatoarelor cu nivelurile complexe ale ventilatoarelor. Sintaxa generală a unui nivel de ventilator simplu este următoarea:

    ( nivel-ventilator [,] limita-inferioară [,] limita-superioară )

nivel-ventilator este fie o valoare numerică (0-7 sau 0-255, în funcție de utilizarea unui tp_fan sau a unui pwm_fan), fie un șir de caractere între ghilimele duble. Atunci când se utilizează un tp_fan, specificarea 0 are același efect ca și specificarea "level 0". În plus față de nivelurile numerice ale ventilatorului, tp_fan acceptă, de asemenea, "level auto" și "level disengaged" sau "level full-speed". A se vedea mai sus pentru o explicație a ceea ce înseamnă acestea. Formatul lui limita-inferioară și limita-superioară depinde de faptul dacă doriți să utilizați Modul simplu sau Modul complex.

  Modul simplu
În modul simplu, limita inferioară și limita superioară ale unui nivel de ventilator sunt specificate fiecare ca o singură valoare de temperatură. Ambele sunt comparate numai cu cea mai mare temperatură găsită în toți senzorii termici configurați. Utilizarea acestui mod de funcționare are sens, de exemplu, dacă toate citirile de temperatură provin de la senzorii termici on-DIE ai unui procesor multi-nucleu. Turația ventilatorului va afecta toate aceste temperaturi în același mod, deoarece acestea au în comun o singură conexiune termică cu radiatorul, astfel încât este logic să se ignore toate aceste temperaturi, cu excepția celei mai ridicate dintre ele. Ca regulă generală, dacă senzorii termici acoperă mai multe dispozitive, ar trebui să folosiți Modul complex sau, cel puțin, să specificați valori de corecție pentru a ține cont de diferitele valori de temperatură.

  Modul complex
În modul complex, atât limita-inferioară, cât și limita-superioară sunt liste de temperaturi, a căror lungime trebuie să corespundă numărului de citiri de temperatură despre care «thinkfan» știe. Fiecare limită trebuie să fie închisă între paranteze, cu valorile individuale separate prin virgule sau spații, astfel încât sintaxa specifică a unui nivel de ventilator în modul complex este:

    { nivel-ventilator
    ( limita-inferioară-1 [limita-inferioară-2 ...] )
    ( limita-superioară-1 [limita-superioară-2 ...] )
    }

Virgulele opționale au fost omise aici pentru ușurința de citire, iar acoladele sunt interschimbabile cu parantezele rotunde. Rețineți că nu este posibil să se amestece nivelurile simple ale ventilatorului cu nivelurile complexe ale ventilatorului.

Modul complex este, în general, modul de funcționare preferat, deoarece vă permite să specificați cu precizie ce trebuie să facă ventilatorul pentru a menține fiecare componentă în intervalul de temperatură specificat.

CONSULTAȚI ȘI
thinkfan(1)

Exemple de configurații livrate împreună cu distribuția sursă, disponibile și la https://github.com/vmatare/thinkfan/tree/master/examples.

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.