Thinkfan est un simple paquet à installer, sans interface graphique, qui va nous permettre de contrôler le ventilateur de votre processeur.

Installation

Il faut installer les paquets thinkfan et lm-sensors.

sudo apt-get install thinkfan lm-sensors

Configuration

Nous allons d'abord détectez les capteurs de votre ordinateur portable:

sudo sensors-detect

et choisissez simplement les réponses par défaut chaque fois que vous êtes invité en appuyant sur Entrée.
Puis nous allons avtiver le module thinkpad_apic avec l'option fan_control=1.

echo "options thinkpad_acpi fan_control=1" | sudo tee /etc/modprobe.d/thinkfan.conf

Ensite, nous allons recharger le module.

sudo modprobe -rv thinkpad_acpi
sudo modprobe -v thinkpad_acpi

Remarque: Si la première commande échoue avec le message d'erreur suivant modprobe: FATAL: Module thinkpad_acpi is in use, il vous suffit de redémarrer l'ordinateur afin de charger le module avec la configuration modifiée.

Pour activer automatiquement thinkfan au démarrage du système, éditez le fichier /etc/default/thinkpad avec les privilèges root et remplacer no par yes à la ligne suivante:

START=yes

Remarque: Sur Debian 8.0 (Jessie), la ligne ci-dessus doit être ajouter au fichier. Et de taper la commande suivante:

sudo systemctl enable thinkfan.service

Lister Les capteurs de temperature disponnible

Maintenant, les capteurs de température disponibles peuvent être affichés avec la commande suivante:

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

Les lignes de sortie sont enregistrées avec un capteur préfixé dans /etc/thinkfan.conf (avant les seuils de température).

Exemple (T420s):

sensor /sys/devices/platform/coretemp.0/temp1_input
sensor /sys/devices/platform/coretemp.2/temp1_input
sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input

Vous pouvez utiliser les valeurs actuelles des capteurs de température avec

sensors

Configuration des seuils de température et du du capteurs de température

Thinkfan n'a pas d'interface graphique. Les seuils de températures doivent être configurer via le fichier de configuration de thinkfan se trouvant dans /etc/thinkfan.conf. Les seuils par défaut devraient fonctionner avec n'importe quel ThinkPad. Si vous le souhaitez, le fichier peut être modifié avec les privilèges root. Exemple de fichier personnalisé (pour un ThinkPad X2000):

hwmon /sys/devices/virtual/hwmon/hwmon0/temp1_input
(0, 0,  42)
(1, 40, 47)
(2, 45, 52)
(3, 50, 57)
(4, 55, 62)
(5, 60, 67)
(6, 65, 72)
(7, 70, 77)
(127,   75, 32767) # Important: cette ligne (127 = "désengagée", c'est-à-dire non régulée), elle assure la pleine vitesse du ventilateur

Chaque ligne se compose de trois valeurs - dont la signification est (de gauche à droite)

  • Le niveau du ventilateur. 0 (désactivé) - 7 (maximum), 127 ("désengagé", c'est-à-dire pleine charge sans contrôle)
  • La température en atteignant dans la direction descendante du niveau du ventilateur est réduite de 1
  • La température en atteignant dans la direction ascendante du niveau du ventilateur est augmentée de 1

Remarque: Seule la valeur la plus élevée de tout les capteurs de température configurés est pris en compte.

Après avoir configuré les seuils, le service thinkfan peut être démarré manuellement.

sudo systemctl start thinkfan.service

Tester la configuration

Afin d'être en mesure d'observer directement l'effet des réglages effectués, vous arrêtez d'abord le démon thinkfan fonctionnant en arrière-plan

sudo systemctl stop thinkfan

Ensuite, thinkfan est lancé au premier plan par

sudo thinkfan -n

La sortie continue suivante apparaît (exemple)

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

Appuyez sur Ctrl + C pour quitter le test.

Voilà, l'activation du ventilateur du processeur de votre ThinkPad est maintenant terminée. Encore une fois, je m'appelle Jonathan Debétaz et je vous verrai dans un prochain article.