Laptop Mode Tools (Français)
Le noyau Linux depuis la version 2.6.6 dispose d'une option laptop mode. On la retrouve aussi dans la version 2.4 depuis la 2.4.23. Une fois cette option activée, le noyau autorise le disque dur à se mettre en veille ce qui permet une économie d'énergie significative. Laptop Mode Tools (LTM) sont des outils qui ont évolués de simples programmes de contrôle de disque dur en une solution de gestion d'énergie centralisée fournissant une large sélection d'options et qui peut gérer simultanément au travers de sous système, un nombre variable de fonction d'économie d'énergie. Combiné avec acpid (en) et cpufrequtils, LTM fournisent une suite complète d'outil de gestion d'énergie pour les portables.
Installation
laptop-mode-toolsAUR fait partie du dépôt AUR.
Configuration
Avec systemd, lancer le service au démarrage :
systemctl enable laptop-mode.service
Le fichier de configuration principal est /etc/laptop-mode/laptop-mode.conf
et les fichiers de configuration spécifiques aux modules se trouvent dans /etc/laptop-mode/conf.d/*
. Depuis la version 1.56, LTM active automatiquement les modules marqué en auto
, vous trouverez la liste initiale dans /etc/laptop-mode/laptop-mode.conf
juste avant la variable ENABLE_AUTO_MODULES
.
Activation
LTM possède trois niveaux de fonctionnement :
- Un quand l'ordinateur est sur batterie.
- Un autre quand l'ordinateur est sur secteur.
- Un dernier quand l'écran est rabattu.
Pour chacun de ces modes LTM peut adopter une comportement différent. Par défaut LTM ne s'active que si l'ordinateur est sur batterie. Pour modifier ce comportement éditer /etc/laptop-mode/laptop-mode.conf
et modifier les variables suivantes (une valeur à 1 active LMT et une valeur à 0 l'inhibe).
-
ENABLE_LAPTOP_MODE_ON_BATTERY
: Activé quand l'ordinateur est sur batterie. -
ENABLE_LAPTOP_MODE_ON_AC
: Activé quand l'ordinateur est sur secteur. -
ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED
: Activé quand l'écran est rabattu, quelque soit le mode d'alimentation. (Ce mode nécessite d'acpi)
Disques
Si le disque dur le prends en charge, les paramètres d'économie d'énergie avancés de ce dernier peuvent être paramétrés grâce à la commande hdparm -B
(cf. hdparm pour plus d'informations). Sans argument elle renvoie les paramètres actuels. Les valeurs possibles sont comprises entre 1 et 255 où 1 signifie une économie d'énergie très agressive et 255 aucune économie d'énergie. Par défaut, LTM place cette valeur à 1 quand il est sur batterie. Pour modifier la manière dont LTM gère ces paramètres modifier ces lignes dans le /etc/laptop-mode/laptop-mode.conf
:
Détermine si LTM doit contrôler l'alimentation des disques durs (0 pour désactiver):
CONTROL_HD_POWERMGMT="auto"
Paramètre la valeur de hdparm -B
en fonction du mode d'alimentation:
BATT_HD_POWERMGMT=200 LM_AC_HD_POWERMGMT=254 NOLM_AC_HD_POWERMGMT=254
Les paramètres qui suivent modifient le temps d'inactivité en seconde qu'il faut attendre avant la mise en veille du disque dur. Il est aussi recommandé de modifier cette valeur affin d'éviter que la tête de lecture du disque dure ne soit parquée trop souvent :
Active la surveillance de la durée d'inactivité du disque (0 pour désactiver):
CONTROL_HD_IDLE_TIMEOUT=1
Détermine les durées à attendre avant de mettre en veille le disque selon le mode d'alimentation (hdparm -S
):
LM_AC_HD_IDLE_TIMEOUT_SECONDS=7200 LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20 NOLM_HD_IDLE_TIMEOUT_SECONDS=7200
Processeur
Exemple:
/etc/laptop-mode/conf.d/cpufreq.conf
# cpufreq.conf # ThinkPad T40/T42/T60 Example # CONTROL_CPU_FREQUENCY=1 BATT_CPU_MAXFREQ=fastest BATT_CPU_MINFREQ=slowest BATT_CPU_GOVERNOR=ondemand BATT_CPU_IGNORE_NICE_LOAD=1 LM_AC_CPU_MAXFREQ=fastest LM_AC_CPU_MINFREQ=slowest LM_AC_CPU_GOVERNOR=ondemand LM_AC_CPU_IGNORE_NICE_LOAD=1 NOLM_AC_CPU_MAXFREQ=fastest NOLM_AC_CPU_MINFREQ=slowest NOLM_AC_CPU_GOVERNOR=ondemand NOLM_AC_CPU_IGNORE_NICE_LOAD=0 CONTROL_CPU_THROTTLING=0
Voir Cpufreq pour plus de détail.
Périphérique et bus
Intel SATA
- Active le mode ALPM du contrôleur Intel SATA utilisant AHCI afin de permettre la connexion SATA au disque de se mettre en mode de consommation très basse en l'absence d'échange de données.
/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf
# intel-sata-powermgmt.conf # ThinkPad T40/T42/T60 Example # DEBUG=0 CONTROL_INTEL_SATA_POWER=1 BATT_ACTIVATE_SATA_POWER=1 LM_AC_ACTIVATE_SATA_POWER=1 NOLM_AC_ACTIVATE_SATA_POWER=0
/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf
.USB désactivation en auto
/etc/laptop-mode/conf.d/usb-autosuspend.conf
# usb-autosuspend.conf # ThinkPad T40/T42/T60 Example # DEBUG=0 CONTROL_USB_AUTOSUSPEND=1 BATT_SUSPEND_USB=1 LM_AC_SUSPEND_USB=1 NOLM_AC_SUSPEND_USB=0 AUTOSUSPEND_TIMEOUT=2
/etc/laptop-mode/conf.d/usb-autosuspend.conf
.Affichage
Luminosité
Le fichier contrôlant la luminosité est /etc/laptop-mode/conf.d/lcd-brightness.conf
, c'est un ensemble de commande à lancer selon le mode d'alimentation.
/sys/class/backlight/*/brightness
, l'intervalle partant de 0 jusqu'à /sys/class/backlight/*/max_brightness
.Néanmoins, selon le modèle de votre pc, les fichiers peuvent être différents.
Exemple:
/etc/laptop-mode/conf.d/lcd-brightness.conf
# lcd-brightness.conf # ThinkPad T60 Example # DEBUG=0 CONTROL_BRIGHTNESS=1 BATT_BRIGHTNESS_COMMAND="echo 0" LM_AC_BRIGHTNESS_COMMAND="echo 7" NOLM_AC_BRIGHTNESS_COMMAND="echo 7" BRIGHTNESS_OUTPUT="/sys/class/backlight/acpi_video0/brightness"
Extinction du terminal
Seulement pour les terminaux virtuels:
/etc/laptop-mode/conf.d/terminal-blanking.conf
# terminal-blanking.conf # ThinkPad T40/T42/T60 Example # DEBUG=0 CONTROL_TERMINAL=1 TERMINALS="/dev/tty1" BATT_TERMINAL_BLANK_MINUTES=1 BATT_TERMINAL_POWERDOWN_MINUTES=2 LM_AC_TERMINAL_BLANK_MINUTES=10 LM_AC_TERMINAL_POWERDOWN_MINUTES=10 NOLM_AC_TERMINAL_BLANK_MINUTES=10 NOLM_AC_TERMINAL_POWERDOWN_MINUTES=10
Réseau
Ethernet
/etc/laptop-mode/conf.d/ethernet.conf
# ethernet.conf # ThinkPad T40/T42/T60 Example # DEBUG=0 CONTROL_ETHERNET=1 LM_AC_THROTTLE_ETHERNET=0 NOLM_AC_THROTTLE_ETHERNET=0 DISABLE_WAKEUP_ON_LAN=1 DISABLE_ETHERNET_ON_BATTERY=1 ETHERNET_DEVICES="eth0"
Wifi
Les réglages de gestion d'énergie de l'interface wifi sont dépendant du matériel, de ce fait, ils sont plus subtils à configurer. Les réglages dépendent du chipset et sont gérés dans un des trois fichiers suivants :
-
/etc/laptop-mode/conf.d/wireless-power.conf
pour une méthode générique de gestion d'énergie (utiliseiwconfig wlan0 power on/off
). Ces réglages sont appliqués pour la majorité des chipsets. -
/etc/laptop-mode/conf.d/wireless-ipw-power.conf
pour les chipsets Intel pilotés par les vieux driver ipw. Ceci s'applique aipw2100/2200
.
-
/etc/laptop-mode/conf.d/wireless-iwl-power.conf
pour les chipsets pilotés par les modules iwl*.
Il y a une particularité avec quelques chipset fonctionnant avec le module iwlagn (entre autres, le chipset 5300 et d'autres peut être). Pour ces derniers les paramètres suivant dans /etc/laptop-mode/conf.d/wireless-iwl-power.conf
:
IWL_AC_POWER IWL_BATT_POWER
sont ignoré car le fichier /sys/class/net/wlan*/device/power_level
n'existe pas. A la place, c'est la méthode standard qui est automatiquement utilisé (avec iwconfig wlan0 power on/off
).
Audio
Voir les fichiers ac97-powersave.conf
ou intel-hda-powersave.conf
.
Dépannage
laptop-mode-tools ne réagit pas aux évènements !
LTM à besoin que le service acpid tourne pour fonctionner correctement, lancez-le au démarrage:
systemctl enable acpid
Si ça ne fonctionne pas, vérifiez que le service que vous voulez utiliser est bien activé (son paramètre d'activation positionner à 1) dans le fichier de configuration principale, car pour la plupart (le contrôle de cpufreq inclus) il est positionner par défaut à "auto", ce qui ne lance pas toujours le service.
La souris ne répond pas après 5 secondes d'attente
Tapez lsusb
et retrouvez l'id de votre souris puis rajoutez cette id dans la variable AUTOSUSPEND_DEVID_BLACKLIST
dans le fichier /etc/laptop-mode/conf.d/runtime-pm.conf
:
/etc/laptop-mode/conf.d/runtime-pm.conf
... AUTOSUSPEND_DEVID_BLACKLIST="id" ...
Redémarrer le service en tapant :
systemctl restart laptop-mode