THINKFAN(1)

NOM
thinkfan — Un programme simple de contrôle de ventilateur

SYNOPSIS
thinkfan [-hnqDd] [-b BIAIS] [-c CONFIG] [-s SECONDES] [-p [DÉLAI]]

DESCRIPTION

thinkfan lit les températures en provenance d’un ensemble de capteurs configuré et définit la vitesse de rotation des ventilateurs en fonction des limites de température spécifiées dans le fichier de configuration.

AVERTISSEMENT : thinkfan n’effectue qu’une vérification très basique de la validité de la configuration. Cela signifie qu’une mauvaise configuration peut augmenter l’usure thermique du matériel ou même causer sa destruction suite à une surchauffe.

  Capteurs pris en charge

• /proc/acpi/ibm/thermal
    Ce fichier est fourni par le module du noyau thinkpad_acpi sur les vieux Thinkpad.

• Les fichiers temp*_input dans sysfs (interface hwmon)
    Ces fichiers peuvent être fournis par tout pilote hwmon, y compris thinkpad_acpi sur les Thinkpad récents.

• Les disques durs qui prennent en charge S.M.A.R.T. (libatasmart)
    Ce capteur est disponible si thinkfan a été compilé avec -DUSE_ATASMART=ON. Notez que les noyaux Linux récents peuvent aussi indiquer la température des disques durs S.M.A.R.T. à l’aide de l’interface hwmon dans sysfs (et aussi par conséquent à l’aide de lm_sensors), ce qui est en général préférable, car plus efficace.

• Depuis le pilote nVidia propriétaire
    Quand le pilote nVidia propriétaire est utilisé, le sous-système hwmon n’est pas accessible pour la carte concernée. thinkfan peut alors utiliser l’API NVML propriétaire pour obtenir les températures.

• À l’aide de lm_sensors (interface libsensors)
    C’est une solution de remplacement plus fiable et moderne de l’interface hwmon de sysfs mentionnée ci-avant. Il s’agit grosso modo d’une abstraction normalisée pour hwmon de sysfs où les capteurs peuvent toujours être identifiés de manière unique, même si l’ordre de chargement des modules du noyau est modifié.

  Ventilateurs pris en charge
thinkfan peut contrôler autant de ventilateurs que souhaité, ces derniers pouvant être spécifiés de deux manières :

• /proc/acpi/ibm/fan
    Ce fichier est fourni par le module du noyau thinkpad_acpi. Notez que ce module doit être chargé avec l’option fan_control=1 pour autoriser le contrôle des ventilateurs dans l’espace utilisateur. Sur certains modèles, l’option experimental=1 sera peut-être aussi nécessaire. Voir la section VOIR AUSSI à la fin de cette page de manuel pour un lien vers la documentation officielle de thinkpad_acpi.

• Les fichiers pwm*_enable et pwm? dans sysfs
    Ces fichiers sont fournis par tous les pilotes modernes de surveillance du matériel, y compris thinkpad_acpi.

  Associer températures et vitesses de rotation des ventilateurs

Ce programme possède deux modes de fonctionnement généraux :

• Mode détaillé
    En mode détaillé, les limites de température sont définies pour chaque capteur dont thinkfan a la connaissance. Définir des limites appropriées pour chaque capteur de votre système nécessitera probablement quelques tâtonnements et une bonne connaissance de votre matériel, mais c’est la meilleure manière de maintenir la température de chaque composant dans l’intervalle spécifié. Voir les exemples de configuration pour étudier la syntaxe.

• Mode simple
    En mode simple, thinkfan n’utilise que la température la plus haute trouvée dans le système. Cela peut s’avérer dangereux pour les disques durs, par exemple. C’est pourquoi vous devez définir une valeur de correction (c’est-à-dire ajouter 10-15 °C) pour le capteur qui mesure la température de votre disque dur (ou batterie…). Voir les exemples de fichier de configuration pour des détails à ce sujet.

CONFIGURATION
Toutes les fonctionnalités décrites ci-avant sont configurées dans le fichier de configuration de thinkfan. L’emplacement par défaut de ce dernier est /etc/thinkfan.conf ou /etc/thinkfan.yaml (voir aussi l’option -c ci-après). Un exemple de configuration est fourni avec le paquet source. Il n’a pour vocation que l’illustration de divers scénarios et ne peut pas servir de base pour une configuration vraiment fonctionnelle. Pour une référence complète, voir la page de manuel de la configuration thinkfan.conf(5).

OPTIONS

-h  Afficher une aide succincte

-s SECONDES
    Durée maximale en secondes entre les rafraîchissements des mesures de température (par défaut 5)

-b BIAIS
    Un nombre en virgule flottante (-10 à 30) pour lisser ou amplifier les changements brusques de température. Si la température d’un capteur augmente de plus de 2 °C pendant un cycle, ce nombre permet de calculer une valeur de décalage comme suit :

        décalage = delta_t * BIAIS / 10

    Ce décalage est ensuite ajouté à la température réelle :

        temp_biaisée = temp_réelle + décalage

    Si delta_t reste en dessous de 2 °C dans les cycles suivants, décalage sera ramené à 0 par incréments de « sgn(BIAIS) * (1 + abs(BIAIS/5)) ».

    Cela signifie qu’un BIAIS négatif va lisser les pointes de températures courtes et soudaines comme celles qui sont détectées par certains capteurs intégrés dans une puce de silicium (capteurs « on-DIE »), alors qu’un BIAIS positif va exagérer l’augmentation de température pour compenser, par exemple, la lenteur de réponse de certains capteurs due au fait que ces derniers sont fixés sur de gros radiateurs.

    Utilisez le mode DANGEREUX pour passer outre la limitation de -10 à +30 de l’intervalle de valeurs pour BIAIS. Notez que vous ne pouvez pas mettre d’espace entre -b et un argument négatif, car getopt(1) interpréterait ce dernier comme une option et échouerait (c’est-à-dire, écrivez -b-10 au lieu de -b -10).

    La valeur par défaut est 0.

-c FICHIER
    Définir le fichier de configuration à charger. Par défaut, thinkfan essaie de charger en premier /etc/thinkfan.yaml et en second /etc/thinkfan.conf. Le premier doit être au format YAML, alors que le second peut être au format YAML ou posséder l’ancienne syntaxe traditionnelle.

    Si cette option est spécifiée, thinkfan n’essaiera de charger la configuration que depuis le FICHIER. Si le nom de ce dernier se termine par « .yaml », le fichier devra être au format YAML. Dans le cas contraire, il pourra être au format YAML ou posséder l’ancienne syntaxe traditionnelle. Voir thinkfan.conf(5) et thinkfan.conf.legacy(5) pour les détails.

-n  Ne pas se transformer en démon et effectuer sa journalisation sur le terminal au lieu de syslog.

-q  Passer en mode silencieux, c’est-à-dire réduire le niveau de journalisation par rapport au niveau par défaut. Cette option peut être spécifiée plusieurs fois jusqu’à ce que seules les erreurs soient affichées/journalisées.

-v  Devenir plus prolixe. Cette option peut être spécifiée plusieurs fois jusqu’à ce que tous les messages soient affichés/journalisés.

-p [SECONDES]
    Utiliser le contournement des pulsations de ventilateur (pour les anciens Thinkpads). Cette option accepte un argument optionnel en virgule flottante (de 0 à 10 secondes) qui indique la durée de suppression des pulsations. La valeur par défaut est 0,5 secondes.

-d  Ne pas lire la température des disques en veille et considérer que cette dernière est égale à 0 °C. Cette option s’avère utile si une lecture de la température réveille votre disque inutilement. Notez que cette option n’est disponible que si thinkfan a été compilé avec -D USE_ATASMART.

-D  Mode DANGEREUX : désactiver tous les tests de validité. Utiliser ce mode risque d’endommager votre matériel !

SIGNAUX
Les signaux SIGINT et SIGTERM interrompent simplement les opérations et devraient faire que thinkfan s’arrête proprement.

Le signal SIGHUP fait que thinkfan recharge sa configuration. Si un problème survient avec la nouvelle configuration, l’ancienne est conservée.

Le signal SIGUSR1 fait que thinkfan envoie toutes les températures actuelles connues soit vers la console (si thinkfan a été lancé avec l’option -n), soit vers syslog.

Le signal SIGPWR indique à thinkfan que le système est sur le point de se mettre en veille. thinkfan va alors autoriser les erreurs de lecture des capteurs pendant les 4 prochains cycles, car de nombreux capteurs nécessitent quelques secondes avant d’être à nouveau disponibles après leur sortie d’un état de veille (suspension ou hibernation). Si le fichier de service systemd fourni thinkfan-sleep.service est installé, il devra faire en sorte d’envoyer ce signal avant une mise en veille. Avec les distributions non-systemd, d’autres mécanismes devront être utilisés.

Le signal SIGUSR2 indique à thinkfan qu’il doit réinitialiser le contrôle des ventilateurs. Cette réinitialisation est nécessaire pour la plupart des pilotes de ventilateur après leur sortie d’un état suspendu, car ils ont alors tendance à réinitialiser le contrôle de ventilateur en mode automatique. De manière similaire au signal SIGPWR, le fichier de service systemd thinkfan-wakeup.service devra faire en sorte d’envoyer ce signal lors de la sortie d’un état de veille sur les systèmes basés sur systemd(1). Avec les distributions non-systemd, d’autres mécanismes devront être utilisés.

VALEUR RENVOYÉE

0   Fin d’exécution normale

1   Erreur d’exécution

2   Erreur d’exécution inattendue

3   Option de ligne de commande non valable

VOIR AUSSI
La page de manuel de configuration de thinkfan :
thinkfan.conf(5)

Exemples de configuration fournis avec la distribution source, aussi disponibles à :
https://github.com/vmatare/thinkfan/tree/master/examples

La documentation de l’interface utilisateur de Linux hwmon :
https://www.kernel.org/doc/html/latest/hwmon/sysfs-interface.html

La documentation de l’interface de thinkpad_acpi :
https://www.kernel.org/doc/html/latest/admin-guide/laptops/thinkpad-acpi.html

BOGUES
Si thinkfan vous le demande, ou si vous-même le souhaitez, signalez les problèmes au système de suivi des problèmes de Github :

https://github.com/vmatare/thinkfan/issues

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.