Depuis la mise à niveau de 14.10 à 15.04, mon script personnalisé utilisé pour configurer le mode de profil thermique correct pour mon ordinateur portable a cessé de fonctionner, ce qui, à mon avis, est dû au fait que pm-utils ne répond pas à la commutation AC/BAT.
Maintenant, s’il s’agit d’un nouveau comportement souhaité du système, où devrais-je maintenant mettre mon script pour effectuer ce travail (requis pour que mon ordinateur portable fonctionne correctement, même sur le secteur)?
Ok, j'ai trouvé une réponse dans Arch Wiki. Ils donnent la solution suivante:
Il n'y a qu'une chose que systemd ne peut pas faire (à partir de systemd-204): la gestion de l'alimentation selon que le système fonctionne sur secteur ou sur batterie. Pour combler cette lacune, vous pouvez créer une seule règle udev qui exécute un script lorsque l'adaptateur secteur est branché et débranché:
/etc/udev/rules.d/powersave.rules SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/path/to/your/script true" SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/path/to/your/script false"
Pour mon Sony Vaio, j'ai ceci comme configuration personnelle:
/etc/udev/rules.d/99-laptopac.rules
SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/usr/local/bin/sony-thermal.sh true"
SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/usr/local/bin/sony-thermal.sh false"
/usr/local/bin/sony-thermal.sh
#!/bin/sh help () { cat <& ltEOF $ 0: gestion du profil thermique des ordinateurs portables SONY Ce script sélectionne entre les modes "performance" et "silencieux" selon Selon que l'ordinateur portable fonctionne sur secteur ou sur batterie. EOF } set_sony_thermal_profile () { [! -d/sys/devices/platform/sony-laptop] && exit $ NA [! -f/sys/devices/plate-forme/sony-laptop/thermal_control] && exit $ NA cas 1 $ pour performances) printf "Réglage du contrôle thermique SONY en mode Performace." thermal_control = performance ;; silencieux) printf "Réglage du contrôle thermique SONY en mode silencieux." thermal_control = silencieux ;; *) printf "Réglage du contrôle thermique SONY en mode équilibré." thermal_control = symétrique ;; esac echo "$ thermal_control">/sys/devices/platform/sony-laptop/thermal_control && echo Terminé. ||\ écho Echec. } cas $ 1 sur true) set_sony_thermal_profile silent ;; false) set_sony_thermal_profile performance ;; aide) aide ;; *) quitte $ NA ;; esac quitte 0
Cela empêche le processeur de mon ordinateur portable de fonctionner continuellement, même dans des conditions de charge faible, avec de grandes performances et des pertes d’expérience utilisateur.
Les scripts de puissance Ubuntu par défaut peuvent être déclenchés de cette façon.
Ajouter un fichier pm-utils
avec ce contenu
SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/usr/sbin/pm-powersave true"
SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/usr/sbin pm-powersave false"
à /etc/udev/rules.d/
Et les fonctionnalités par défaut d'Ubuntu powersave seront appliquées lorsque vous basculerez de la batterie vers AC et inversement.
Il y a un problème qui ne se déclenche pas au démarrage. Pour résoudre ce problème, ajoutez
udevadm trigger -s power_supply
à /etc/rc.local
avant exit0
.
Avec Ubuntu 16.04, un autre problème est que Network Manager est configuré par défaut sur Gestion de l'alimentation désactivée. Lorsqu'une interface est affichée, elle remplace le paramètre pm-utils
.
Cela peut aussi être corrigé en ajoutant un fichier 02-powersave
#!/bin/sh
[ "$1" = "wlan0" ] && [ "$2" = "up" ] && udevadm trigger -s power_supply
à /etc/NetworkManager/dispatcher.d
.
Remarque: Vous devez remplacer wlan0
par votre interface sans fil qui se trouve dans ifconfig
.