THINKFAN.CONF.LEGACY(5)

NOM
thinkfan.conf.legacy — L’ancienne syntaxe rétrocompatible du fichier de configuration de thinkfan(1)

DESCRIPTION
Le fichier de configuration de thinkfan(1) spécifie une ou plusieurs sources de données thermiques, un et un seul ventilateur à contrôler et des niveaux de ventilateur. Un niveau de ventilateur associe une certaine vitesse de rotation de ventilateur à des limites inférieure et supérieure de température. Si la température atteint la limite supérieure, thinkfan(1) passe au niveau de ventilateur suivant, et si la température passe en dessous de la limite inférieure, thinkfan(1) passe au niveau précédent. Les limites de température peuvent être une température seule (mode simple) ou consister en plusieurs températures (mode complexe). En mode simple, seule la plus haute de toutes les températures connues est comparée aux limites inférieure et supérieure. Si vos périphériques possèdent des températures nominales très différentes (par exemple des CPU et des disques durs mécaniques), vous devez spécifier des valeurs de correction pour harmoniser leurs gammes de température, ou mieux : utiliser le mode complexe. En mode complexe, les limites inférieure et supérieure de chaque niveau de ventilateur sont spécifiées pour chaque capteur individuellement. thinkfan(1) passera alors au niveau de ventilateur suivant si une des limites supérieures est atteinte, et au niveau de ventilateur précédent si toutes les températures sont descendues en dessous de leurs limites inférieures respectives.

CAPTEURS THERMIQUES
Plusieurs mots-clés de capteur peuvent être combinés dans un seul fichier de configuration, mais notez que l'ordre est important par rapport aux limites de niveau de ventilateur supérieure et inférieure si vous utilisez le mode complexe. C’est-à-dire que si /proc/acpi/ibm/thermal contient 16 températures et si vous spécifiez un capteur hwmon après la déclaration tp_thermal, le capteur hwmon correspondra à la dix-septième température. Une valeur_de_correction peut être spécifiée après chaque chemin de capteur. Cette valeur (qui peut être négative) sera systématiquement ajoutée à la température lue sur ce capteur. Des valeurs de correction doivent être spécifiées si vous utilisez le mode simple avec des composants qui possèdent des températures nominales différentes, comme les disques durs et les CPU. Notez cependant que le mode complexe est en général une meilleure solution, car il permet de contrôler les niveaux de ventilateur et les gammes de température pour chaque capteur, au lieu de simplement ajouter une valeur fixe pour harmoniser les différentes gammes de température de ces derniers.

tp_thermal /proc/acpi/ibm/thermal [ (valeur_de_correction ...) ]
    Sur les anciens thinkpads, utiliser les capteurs thermiques fournis par le module du noyau thinkpad_acpi. Ils se trouvent normalement dans /proc/acpi/ibm/thermal, et ce mot-clé ne sera donc pas souvent utilisé avec les autres chemins. Ce fichier contient en général 8 à 16 températures, certaines d’entre elles pouvant être réservées pour les périphériques amovibles ou complètement inutilisées. Les champs de température inutilisée contiennent toujours la valeur -128. Étant donné que ce fichier contient toutes les températures que thinkpad_acpi connaît, il ne peut pas y avoir plus d’une instruction tp_thermal dans un fichier de configuration.

hwmon chemin_sysfs [ (valeur_de_correction) ]
    Utiliser une température hwmon standard en entrée qui peut être fournie par des pilotes du noyau de toutes sortes. chemin_sysfs est en général un fichier nommé « temp*_input », quelque part sous /sys ; vous pouvez donc rechercher de tels fichiers à l’aide de la commande « find /sys -type f -name "temp*_input" ». Chacun d’entre eux contient une seule température ; vous devez donc ajouter une instruction hwmon pour chaque périphérique dont vous voulez contrôler la température.

atasmart chemin_périphérique [ (valeur_de_correction) ]
    NOTA : disponible seulement si thinkfan(1) a été compilé avec USE_ATASMART activée.

    Lire la température directement depuis un disque dur utilisant S.M.A.R.T. Voir aussi l’option -d de thinkfan(1) qui empêche ce dernier de réveiller un disque en veille (mécanique) pour lire sa température.

nv_thermal id_bus_pci [ (valeur_DE_correction) ]
    NOTA : disponible seulement si thinkfan(1) a été compilé avec USE_NVML activée.

    Lire la température d’une carte graphique Nvidia depuis le pilote Nvidia propriétaire. Cette méthode ne fonctionne pas avec le pilote libre « nouveau » ; elle repose spécifiquement sur la bibliothèque libnvidia-ml.so qui est normalement installée avec le pilote binaire Nvidia. La valeur correcte de id_bus_pci peut être déterminée en utilisant par exemple une commande lspci(8) du style : « lspci | grep -i vga ». La plupart des pilotes graphiques libres (« radeon », « nouveau », et peut-être d’autres) peuvent être utilisés à la place avec le mot-clé hwmon décrit ci-avant.

VENTILATEURS
À l’heure actuelle, thinkfan(1) ne peut contrôler qu’un seul ventilateur à la fois. En théorie, vous pouvez exécuter plusieurs instances du programme simultanément (avec plusieurs fichiers de configuration) pour contrôler plusieurs ventilateurs, mais cela nécessite d’activer le mode « DANGEREUX », ce qui risque de rendre inopérants la plupart des scripts d’initialisation. La présence de plusieurs instructions fan dans un même fichier de configuration constitue une erreur.

tp_fan /proc/acpi/ibm/fan
    Utiliser le contrôle de ventilateur fourni par le module du noyau thinkpad_acpi, qui doit être chargé avec l’option fan_control=1. Le chemin est défini par le module du noyau thinkpad_acpi et est peu susceptible de modification. En plus des niveaux de ventilateur allant de 0 à 7, il prend aussi en charge les modes disengaged et auto.

    Le mode auto doit déléguer le contrôle du ventilateur au microprogramme, de sorte qu’il soit considéré comme un mode « par défaut » qui ne modifie pas le comportement du ventilateur. Il s’avère utile, par exemple, si vous ne souhaitez modifier le comportement du ventilateur que pour les températures haute et/ou basse.

    Le mode disengaged ou full-speed désactive de manière effective le limiteur de vitesse de rotation du ventilateur. Cette dernière va augmenter lentement jusqu’à ce que le ventilateur utilise la puissance électrique maximale fournie par le contrôleur intégré. À n’utiliser que pour prévenir une potentielle surchauffe destructrice, car le ventilateur fonctionne alors en dehors de ses spécifications, provoquant une usure rapide de ses roulements.

pwm_fan chemin_sysfs
    Contrôler un ventilateur PWM (Pulse Width Modulation — modulation de largeur d'impulsion) à l’aide de sysfs. Parmi les pilotes hwmon qui fournissent un fichier « temp*_input », nombreux sont ceux qui permettent aussi de contrôler un ventilateur, bien qu’il puisse aussi exister des pilotes dédiés soit à la lecture de température, soit au contrôle de ventilateur. Pour chercher un fichier de contrôle PWM, vous pouvez par exemple utiliser la commande « find /sys -type f -name "pwm?" ». Notez qu’avec PWM, les niveaux de ventilateur sont en général dans une plage de 0 à 255, bien qu’en plus d’un fichier comme pwm1, il puisse aussi exister des fichiers pwm1_min et pwm1_max qui spécifient des limites différentes (souples ou recommandées ?) pour un ventilateur particulier.

NIVEAUX DE VENTILATEUR
Définir les niveaux de ventilateur est la fonction principale du fichier de configuration. C’est ici que vous allez utiliser les valeurs de température définies précédemment pour définir les limites inférieure et supérieure des vitesses de rotation de ventilateur. Vous ne pouvez pas mélanger des niveaux de ventilateur simples avec des niveaux complexes. La syntaxe générale d’un niveau de ventilateur simple est :

    ( niveau_ventilateur [,] limite_inf [,] limite_sup )

niveau_ventilateur est soit une valeur numérique (0-7 ou 0-255, selon qu’on utilise un tp_fan ou un pwm_fan), soit une chaîne entourée de guillemets hauts doubles. Lorsqu’un tp_fan est utilisé, spécifier 0 équivaut à spécifier "level 0". En plus des niveaux de ventilateur numériques, tp_fan prend aussi en charge "level auto" et "level disengaged" ou "level full-speed". Voir plus haut pour une explication de ces termes. Le format de limite_inf et limite_sup diffère selon que vous utilisez le mode simple ou le mode complexe.

  Mode simple
En mode simple, les limite_inf et limite_sup d’un niveau de ventilateur sont spécifiées, pour chacune d’entre elles, sous la forme d’une seule valeur de température. Les deux valeurs ne sont comparées qu’à la plus haute température détectée parmi tous les capteurs thermiques configurés. Utiliser ce mode opératoire est pertinent, par exemple, si toutes les lectures de température proviennent des capteurs thermiques intégrés (« on-DIE ») d’un processeur multi-cœur. La vitesse de rotation du ventilateur va affecter toutes ces températures de la même façon, car elles partagent une seule connexion thermique avec le radiateur ; il est donc logique de ne prendre en compte que la plus haute de ces températures. En règle générale, si vos capteurs thermiques couvrent plusieurs périphériques, il est préférable d’utiliser le mode complexe, ou au moins de spécifier des valeurs de correction pour tenir compte des différences de températures nominales.

  Mode complexe
En mode complexe, les limite_inf et limite_sup sont des listes de températures dont la longueur doit correspondre au nombre de lectures de température dont thinkfan(1) a la connaissance. Chaque limite doit être entourée d’accolades, les valeurs individuelles étant séparées les unes des autres par des virgules ou des espaces ; la syntaxe spécifique d’un niveau de ventilateur en mode complexe est donc :

    { niveau_ventilateur
    ( valeur_inf_1 [valeur_inf_2 ...] )
    ( valeur_sup_1 [valeur_sup_2 ...] )
    }

Les virgules optionnelles sont omises ici afin d’améliorer la lisibilité et les accolades sont interchangeables avec des parenthèses. Notez qu’il n’est pas possible de mélanger des niveaux de ventilateur simples avec des niveaux de ventilateur complexes.

Il est en général préférable d’utiliser le mode complexe, car il permet d’indiquer avec précision ce que doit faire le ventilateur pour que la température de chaque composant reste dans la plage spécifiée.

VOIR AUSSI
thinkfan(1)

Les exemples de configuration fournis avec la distribution source et disponibles en ligne à https://github.com/vmatare/thinkfan/tree/master/examples.

TRADUCTION
La traduction française de cette page de manuel a été créée par Lucien Gentis <lucien.gentis@univ-lorraine.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.