GNU/Linux >> Tutoriels Linux >  >> Linux

Linux - Ajustez la vitesse du ventilateur via Fancontrol en fonction de la température du disque dur (hddtemp) ?

Comment puis-je régler la vitesse du ventilateur en fonction de la température du disque dur via Fancontrol ?

Réponse acceptée :

J'ai finalement trouvé un script simple pour contrôler la vitesse du ventilateur en fonction de la température du disque dur via Fancontrol , Hddtemp , et Capteurs Lm . Dans le script suivant, "/dev/sda ” est le disque dur à surveiller et “/Fancontrol/Hddtemp ” est le fichier de sortie à lire par Fancontrol. Appuyez sur Ctrl + Alt + T pour ouvrir Terminal et exécutez la commande suivante pour vérifier si "/dev/sda ” est la bonne :

sudo hddtemp /dev/sd[a-z]

Utilisez uniquement celui pris en charge par Hddtemp, qui affichera la température plutôt que "S.M.A.R.T. pas disponible".
Remplacez "/dev/sda ” avec le bon dans le script si nécessaire.
Si vous n'avez pas encore configuré Fancontrol, consultez cette page , cette page , et cette page et exécutez les commandes suivantes une par une (redémarrez Linux après avoir exécuté la première) :

sudo sensors-detect
observer les capteurs
sudo pwmconfig
sudo service fancontrol start

Suivez ensuite la procédure ci-dessous :
(1) Exécutez la commande suivante pour créer un fichier de script.

sudo mkdir -p "/Fancontrol/" &sudo xed /Fancontrol/HDD_temp

(2) Copiez le script suivant dans le fichier et enregistrez-le.

#!/bin/bash
File=/Fancontrol/Hddtemp
while true
do 
temperature=$(sudo hddtemp -n /dev/sda)
echo $(($temperature * 1000)) > "$File"
sleep 30 
done

(3) Exécutez la commande suivante pour la rendre exécutable.

sudo chmod +x /Fancontrol/HDD_temp

(4) Exécutez la commande suivante pour créer un fichier de service.

sudo xed /lib/systemd/system/HDD_temp.service

(5) Copiez les lignes suivantes dans le fichier et enregistrez-le.

[Service]
ExecStart=/Fancontrol/HDD_temp

[Installer]
WantedBy=multi-user.target

(6) Exécutez les commandes suivantes une par une :

sudo chmod 664 /lib/systemd/system/HDD_temp.service
sudo systemctl daemon-reload
sudo systemctl start HDD_temp.service
sudo systemctl enable HDD_temp.service

Ensuite, le script "HDD_temp " sera exécuté en tant que service système au démarrage de Linux.

(7) Exécutez la commande suivante pour modifier "fancontrol ”, le fichier de configuration.

sudo xed /etc/fancontrol

Recherchez la ligne qui commence par "FCTEMPS ”. Par exemple :

FCTEMPS=hwmon1/pwm1=hwmon1/temp1_input

Sur cette ligne, "hwmon1/temp1_input ” est la température (par exemple la température du chipset) actuellement lue par Fancontrol. Remplacez-le par "/Fancontrol/Hddtemp ”, et la ligne deviendra :

FCTEMPS=hwmon1/pwm1=/Fancontrol/Hddtemp

Enregistrez le fichier et exécutez la commande suivante pour redémarrer Fancontrol.

redémarrage du fancontrol du service sudo

Ensuite, le ventilateur contrôlé par "hwmon1/pwm1 » répondra à « /Fancontrol/Hddtemp ”, la température du disque dur. Notez que "HDD_temp" et "Hddtemp" sont respectivement le fichier de script et le fichier de sortie. Ne les confondez pas.

Connexe :Windows – Comment forcer la page de codes/les paramètres régionaux (différents des paramètres régionaux du système Linux) pour les applications Wine non Unicode ?
Linux
  1. Sauvegarder tout le disque dur Linux ?

  2. Linux - Rend la copie de disque/disque plus lente ?

  3. Bloquer une adresse IP sur un serveur Linux

  4. Comment éteindre une machine Debian Linux via la console

  5. Arrêter mon disque dur (de sauvegarde) sous Linux lorsque je ne l'utilise pas

Commande Sudo sous Linux

Comment trouver les détails du disque dur sous Linux

Comment trouver la vitesse de transfert de données du disque dur sous Linux

Comment vérifier les blocs défectueux ou les secteurs défectueux sur le disque dur sous Linux

Augmenter la vitesse DNF sur Fedora Linux 35

Comment puis-je surveiller la charge du disque dur sous Linux ?