Quelqu'un à t'il une bonne idée pour gérer les ventilateurs de son ordinateur à la volée directement sous Linux?

Parce que bon je viens de découvrir "fancontrol" avec l'utilitaire pwmconfig, mais j'ai sans doute loupé une étape, mais il détecte mal la vitesse minimal des ventilateurs.
Du moins les Bquiet silent wings 3 et pure wings 2 que j'ai dessus.
Du coup il les mets à fond ce qui est pénible sachant que plus rien ne surchauffe dans ma configuration (surtout depuis que j'ai mis les ventilateurs extracteur du dessus du boitier dans le bon sens... Le cpu ne chauffe plus qu'à 27°C minimal et 58°C pleine charge au lieu de 37°C->76°C...).

Avez-vous aussi une idée aussi sur d'un gestionnaire graphique sur ce sujet?

Voilà ce qu'il en ressort du fichier générer par pwmconfig :
# Configuration file generated by pwmconfig, changes will be lost
INTERVAL=5
DEVPATH=hwmon0=devices/pci0000:00/0000:00:03.1/0000:1c:00.0 hwmon2=devices/platform/nct6775.2592
DEVNAME=hwmon0=amdgpu hwmon2=nct6795
FCTEMPS=hwmon2/pwm6=hwmon2/temp2_input hwmon2/pwm4=hwmon2/temp2_input hwmon2/pwm3=hwmon2/temp2_input hwmon2/pwm5=hwmon2/temp2_input hwmon0/pwm1=hwmon0/temp1_input
FCFANS=hwmon2/pwm6=hwmon2/fan5_input hwmon2/pwm4=hwmon2/fan3_input hwmon2/pwm3=hwmon2/fan1_input hwmon2/pwm5=hwmon2/fan4_input hwmon0/pwm1=
MINTEMP=hwmon2/pwm6=20 hwmon2/pwm4=20 hwmon2/pwm3=20 hwmon2/pwm5=20 hwmon0/pwm1=20
MAXTEMP=hwmon2/pwm6=65 hwmon2/pwm4=65 hwmon2/pwm3=65 hwmon2/pwm5=65 hwmon0/pwm1=75
MINSTART=hwmon2/pwm6=150 hwmon2/pwm4=150 hwmon2/pwm3=150 hwmon2/pwm5=150 hwmon0/pwm1=150
MINSTOP=hwmon2/pwm6=0 hwmon2/pwm4=0 hwmon2/pwm3=0 hwmon2/pwm5=0 hwmon0/pwm1=100
C'est quand même un peu moche comme fichier généré...

plus propre :
$ fancontrol --help
Loading configuration from /etc/fancontrol ...

Common settings:
  INTERVAL=5

Settings for hwmon2/pwm6:
  Depends on hwmon2/temp2_input
  Controls hwmon2/fan5_input
  MINTEMP=20
  MAXTEMP=65
  MINSTART=150
  MINSTOP=0
  MINPWM=0
  MAXPWM=255

Settings for hwmon2/pwm4:
  Depends on hwmon2/temp2_input
  Controls hwmon2/fan3_input
  MINTEMP=20
  MAXTEMP=65
  MINSTART=150
  MINSTOP=0
  MINPWM=0
  MAXPWM=255

Settings for hwmon2/pwm3:
  Depends on hwmon2/temp2_input
  Controls hwmon2/fan1_input
  MINTEMP=20
  MAXTEMP=65
  MINSTART=150
  MINSTOP=0
  MINPWM=0
  MAXPWM=255

Settings for hwmon2/pwm5:
  Depends on hwmon2/temp2_input
  Controls hwmon2/fan4_input
  MINTEMP=20
  MAXTEMP=65
  MINSTART=150
  MINSTOP=0
  MINPWM=0
  MAXPWM=255

Settings for hwmon0/pwm1:
  Depends on hwmon0/temp1_input
  Controls 
  MINTEMP=20
  MAXTEMP=75
  MINSTART=150
  MINSTOP=100
  MINPWM=0
  MAXPWM=255

Error: file hwmon2/pwm6 doesn't exist
Error: file hwmon2/pwm4 doesn't exist
Error: file hwmon2/pwm3 doesn't exist
Error: file hwmon2/pwm5 doesn't exist
Error: file hwmon0/pwm1 doesn't exist

At least one referenced file is missing. Either some required kernel
modules haven't been loaded, or your configuration file is outdated.
In the latter case, you should run pwmconfig again.
Voilà ce que sensors me retourne :
$ sensors
nct6795-isa-0a20
Adapter: ISA adapter
Vcore:                  +0.83 V  (min =  +0.00 V, max =  +1.74 V)
in1:                    +1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
AVCC:                   +3.34 V  (min =  +2.98 V, max =  +3.63 V)
+3.3V:                  +3.34 V  (min =  +2.98 V, max =  +3.63 V)
in4:                    +1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:                    +0.15 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:                    +0.61 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
3VSB:                   +3.33 V  (min =  +2.98 V, max =  +3.63 V)
Vbat:                   +3.22 V  (min =  +2.70 V, max =  +3.63 V)
in9:                    +1.81 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in10:                   +0.00 V  (min =  +0.00 V, max =  +0.00 V)
in11:                   +0.73 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in12:                   +1.14 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in13:                   +0.67 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in14:                   +1.54 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:                  2156 RPM  (min =    0 RPM)
fan2:                     0 RPM  (min =    0 RPM)
fan3:                   572 RPM  (min =    0 RPM)
fan4:                   596 RPM  (min =    0 RPM)
fan5:                   446 RPM  (min =    0 RPM)
fan6:                   559 RPM  (min =    0 RPM)
SYSTIN:                 +33.0°C  (high =  +0.0°C, hyst =  +0.0°C)  ALARM  sensor = CPU diode
CPUTIN:                 +31.0°C  (high = +115.0°C, hyst = +90.0°C)  sensor = thermistor
AUXTIN0:                +49.5°C  (high = +115.0°C, hyst = +90.0°C)  sensor = thermistor
AUXTIN1:               -128.0°C    sensor = thermistor
AUXTIN2:                +41.0°C    sensor = thermistor
AUXTIN3:                 -3.0°C    sensor = thermistor
SMBUSMASTER 0:          +46.5°C  
PCH_CHIP_CPU_MAX_TEMP:   +0.0°C  
PCH_CHIP_TEMP:           +0.0°C  
PCH_CPU_TEMP:            +0.0°C  
intrusion0:            ALARM
intrusion1:            ALARM
beep_enable:           disabled

amdgpu-pci-1c00
Adapter: PCI adapter
vddgfx:       +1.00 V  
fan1:             N/A  (min =    0 RPM, max =    0 RPM)
temp1:        +49.0°C  (crit = +104000.0°C, hyst = -273.1°C)
power1:       39.05 W  (cap = 208.00 W)

k10temp-pci-00c3
Adapter: PCI adapter
Tdie:         +36.2°C  (high = +70.0°C)
Tctl:         +46.2°C
Ce qui fait déjà plus propre.
fancontrol n'a jamais vraiment fonctionner chez moi 🙁

Et puis tu as de la chance d'avoir autant de détails avec sensors. Je n'ai pratiquement rien 🙁
Pas la grande joie ce genre de chose sans compter le contrôle des dels (led)...

A part relancer sensor-detect je n'ai rien fait de plus. En dehors du ssd nvme M2 970evo j'ai tous les retours des sondes.
Non, on est largement pauvre sous linux de tous ça. La faute des constructeurs qui brident tout... 🙁
5 mois plus tard
Petite astuce pour relancer automatiquement le service fancontrol si il s'éteint pour diverses raison. Cela évite de devoir le faire à la main à chaque sortie de veille par exemple :

Ajouter :
Restart=always
Dans la section [Service] du fichier
/etc/systemd/system/multi-user.target.wants/fancontrol.service
et faire :
sudo systemctl daemon-reload
Pour information :
Si le service n'est pas relancé, les ventilateurs tournent à fond.
Le plus simple quand on veut editer un service systemd c'est de passer par :
systemctl edit fancontrol
Et d'y mettre juste ce qu'on veut ajouter/changer, en précisant quand même la section concernée. Donc ici
[Service]
Restart=always
Ce qui permet de créer un fichier override.conf au bon endroit (dans /etc/systemd/system/fancontrol.service.d me semble). Et évite le daemon-reload

Car là j'ai peur que tu ai en réalité modifié le fichier dans /usr/lib/systemd etc ce qui risque de disparaitre à la prochaine mise à jour du rpm.
C'est pas faux.

Je ne connaissais pas systemctl edit n'ayant pas eu encore la nécessité d'y toucher.

Mais bon cela me semble plus adéquate dans ce genre de cas.
Il y a aussi le
systemctl cat fancontrol
qui du coup concatène l'ensemble (le fichier .service d'origine et l'override).
Je vais reprendre la conf entière des ventilateurs de mes machines avec fancontrol, je regarderai sur ce genre de possibilités de systemd.

Je n'ai pas encore eu le temps de me pencher sur toutes les possibilités offerte par systemd, ayant déjà fort à faire dans pas mal de domaine. Vu que les besoins sont là merci pour les infos 😉 .

Je regarderai pour l'outil sous Plasma/KDE dès que j'aurai le temps.
2 mois plus tard
madko wrote:Le plus simple quand on veut editer un service systemd c'est de passer par :
systemctl edit fancontrol
Et d'y mettre juste ce qu'on veut ajouter/changer, en précisant quand même la section concernée. Donc ici
[service]
Restart=always
Ce qui permet de créer un fichier override.conf au bon endroit (dans /etc/systemd/system/fancontrol.service.d me semble). Et évite le daemon-reload

Car là j'ai peur que tu ai en réalité modifié le fichier dans /usr/lib/systemd etc ce qui risque de disparaitre à la prochaine mise à jour du rpm.
Pour celles et ceux qui veulent faire la même chose, il faut que le "s" de [service] soit en majuscule, sinon cela ne fonctionne pas 😉.
C'est pour ça que je demandais le systemctl cat fancontrol je pense qu'il aurait pas affiché le Restart=always vu que [service] il connait pas. Ou alors la commande est pas encore assez intelligente, mais ça serait dommage. Pour moi l'interêt de ces commandes et pas un simple vi, c'est d'ajouter un peu de controle de syntaxe etc (comme sudoedit par ex)
Yep je fais plus toujours trop gaffe aux majuscule/minuscule, du coup j'ai pas fait gaffe en recopiant. Vu que Linux fait la différence, c'est pas anormale d'avoir ce genre de chose.

Mais ce que tu disais avec l'histoire des mises à jours qui supprime la conf c'est réalisé. Du coup j'ai pris le temps de tester ce que tu disais, mais il y avait ce point à faire attention 😉. Encore merci 😉 cela m'est bien utile.

Par contre dommage que ce soit du nano powered...
essaye
EDITOR=vim systemctl edit XXX


En tout cas chez moi c'est pas du nano
oki je savais pas :-P. (enfin j'ai pas cherché non plus :-P )
C'est pas le seul à faire ça. Beaucoup d'outils ligne de commande pour de l'édition, s'ils sont bien faits, supportent la variable d'environnement EDITOR. Me semble qu'il y a pareil pour le pager (less/more) etc.

Par ex sudoedit je crois qu'il supporte EDITOR. vipw/vigr aussi.

Et ça permet à ces outils de fonctionner sur des distro qui de base n'auraient pas VI etc. Bref c'est du bonheur faut en abuser.
Yep vu comment je m'éclate avec plein de truc du genre tant au taff que perso :-P.

Je savais pour sudoedit et d'autres, mais comme je suis déjà sur plein de chose j'ai pas le cerveau pour tout gérer 😉.

Là je suis sur du chapeau rouge directement avec docker et openshift :-P ...

Enfin bref, déjà que j'ai enfin passé le cap de fancontrol vu le "petit" nombre de ventilateur que mes ordis ont... Là je taff pour gérer ceux du boitier plus complet et qui m'évitera de le faire dans le bios.