Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

Modes de mise en veille Linux et configuration et commandes pour passer en veille

Dans un monde où l’efficacité énergétique et la gestion optimisée des ressources sont primordiales, la mise en veille des systèmes informatiques joue un rôle clé. Sous Linux, plusieurs modes de mise en veille existent, chacun offrant des solutions adaptées selon les besoins en économie d’énergie et en reprise d’activité. Que vous soyez un utilisateur de bureau souhaitant prolonger l’autonomie de votre ordinateur portable ou un administrateur système cherchant à réduire la consommation d’énergie d’un serveur, comprendre ces différents modes et savoir comment les utiliser est essentiel.

Dans cet article, nous allons explorer les principaux modes de mise en veille sous Linuxveille simple, veille prolongée, et hybride — tout en vous fournissant les commandes nécessaires pour les activer facilement. Que vous utilisiez une distribution populaire comme Ubuntu, Fedora, Debian, Linux Mint, maîtriser ces outils vous permettra de mieux gérer l’état de votre système et de prolonger sa durée de vie tout en minimisant son empreinte énergétique.

Quelles sont les modes de mises en veille et les commandes pour passer en veille sur Linux

Quelles sont les modes de mises en veille et les commandes pour passer en veille sur Linux

Mise en veille simple (S3) : suspension dans la mémoire RAM

Dans ce mode, le contenu de la RAM est conservé, mais la plupart des composants du système (comme le processeur et le disque dur) sont mis hors tension. Le système consomme très peu d’énergie et peut se réveiller rapidement.

  • Avantages : Réveil rapide
  • Inconvénients : En cas de coupure de courant, les données non sauvegardées seront perdues

Ce mode est principalement utilisé dans des scénarios où la reprise rapide est plus importante que les économies d’énergie maximales.

Commande pour lancer :

sudo systemctl suspend

Mise en veille prolongée (S4) : hibernation

Cette commande met le système en veille prolongée (suspend to RAM).

Dans ce mode, le contenu de la RAM est écrit sur le disque dur dans un fichier ou une partition de swap, puis le système est complètement éteint. Quand vous rallumez le système, l’état de la session est restauré à partir du disque dur.

  • Avantages : Pas de consommation d’énergie car le système est complètement éteint, et l’état est restauré même après une coupure de courant
  • Inconvénients : Le réveil est plus lent qu’avec la veille simple, car il nécessite de recharger tout depuis le disque

Commande pour lancer :

sudo systemctl hibernate

Mise en veille hybride (Suspension dans la RAM+Mise en veille prolongée)

Ce mode combine la suspension et l’hibernation. Le contenu de la RAM est sauvegardé sur le disque (comme en hibernation), mais le système est également mis en veille (comme en suspend to RAM). Si l’alimentation est perdue, le système pourra restaurer l’état depuis le disque dur, mais s’il n’y a pas de perte d’alimentation, le système se réveillera rapidement à partir de la RAM.

  • Avantages : Sécurité contre la perte de données en cas de coupure de courant, tout en offrant un réveil rapide si la mise en veille est courte
  • Inconvénients : Utilisation à la fois du swap (espace disque) et de la RAM

Commande pour lancer :

sudo systemctl hybrid-sleep

Mode veille basse consommation (S0ix)

Ce mode est spécifique aux machines modernes et à certaines architectures matérielles. Il consomme très peu d’énergie tout en conservant l’état de la RAM actif. Il n’est pas aussi économe que le mode Suspend to RAM mais est une alternative intéressante pour les systèmes ne supportant pas bien la veille profonde.

  • Avantages : Transition plus rapide que d’autres modes
  • Inconvénients : Consomme plus d’énergie que la suspension dans la RAM

Commande pour lancer :

sudo systemctl suspend-then-hibernate
Ce mode est souvent implémenté sous la forme “suspend-then-hibernate” sur les systèmes qui gèrent bien cette fonctionnalité.

Verrouillage de l’écran

Bien que cela ne soit pas strictement un mode de veille, la commande permet de verrouiller l’écran pour la sécurité sans mettre le système en veille. Cela peut être combiné avec d’autres modes.

Commande pour lancer :

gnome-screensaver-command -l

ou sur d’autres environnements :

dm-tool lock

Comment changer le mode de mise en veille sur Linux

/sys/power/mem_sleep

Les états S0ix représentent la résidence dans les états d’alimentation de veille du SoC Intel®. Les états S0ix éteignent certaines parties du SoC lorsqu’elles ne sont pas utilisées, tout en maintenant des performances optimales. Ces états sont déclenchés lorsque des conditions spécifiques au sein du SoC sont remplies, par exemple, lorsque certains composants sont dans des états de faible consommation.

Du point de vue du système d’exploitation compatible avec l’ACPI, S0ix est un état d’inactivité alors que l’on se trouve toujours dans l’état « S0 actif ».

Cependant, S0ix n’est pas totalement transparent pour le système d’exploitation. Pour entrer dans l’état S0ix, le système d’exploitation doit remplir des conditions spécifiques dépendant de la plate-forme. À cette fin, la spécification ACPI 6.2 a introduit un indicateur de capacité d’inactivité S0 à faible consommation dans la table de description ACPI fixe (FADT). Pour les systèmes x86, cet indicateur signale au système d’exploitation si un SoC Intel® prend ou non en charge la fonction S0ix.

Le fichier /sys/power/mem_sleep sous Linux est utilisé pour configurer et contrôler le comportement de la mise en veille (suspension) du système, spécifiquement en lien avec les différentes options de mise en veille disponibles, telles que “s2idle” et “deep”.

mem_sleep string Sleep State
s2idle suspend-to-idle
shallow standby
deep suspend-to-RAM

Pour activer le mode deep (veille profonde) :

echo deep | sudo tee /sys/power/mem_sleep

Pour revenir au mode s2idle :

echo s2idle | sudo tee /sys/power/mem_sleep

/etc/systemd/sleep.conf

Enfin, le fichier /etc/systemd/sleep.conf est un fichier de configuration utilisé par systemd pour définir le comportement du système en matière de gestion de la mise en veille, de l’hibernation et des états hybrides. Il permet de configurer différents aspects des actions de mise en veille, comme le délai avant la mise en veille ou la façon dont le système se comporte en cas de basse batterie, par exemple.

[Sleep]
SuspendState=mem
HibernateState=disk
HybridSleepState=suspend
SuspendMode=platform
HibernateMode=shutdown
HybridSleepMode=suspend
HibernateDelaySec=180min
HybridSleepDelaySec=120min
  • SuspendState= : Définit les états de suspension que le système doit utiliser lorsqu’il est mis en veille. Par exemple, vous pouvez spécifier suspend, freeze, ou tout autre état pris en charge par votre matériel.
  • HibernateState= : Spécifie l’état utilisé pour l’hibernation. Les options incluent des valeurs comme disk ou platform, en fonction de votre système.
  • HybridSleepState= : Définit l’état utilisé pour le mode de veille hybride (suspension suivie d’une hibernation).
  • SuspendMode= : Détermine le mode dans lequel le système doit entrer lors de la suspension. Typiquement, on retrouve des valeurs comme platform ou shutdown.
  • HibernateMode= : Définit le mode pour l’hibernation, avec des options comme shutdown ou platform.
  • HybridSleepMode= : Spécifie le mode à utiliser pour la veille hybride, qui combine suspension et hibernation.
  • HibernateDelaySec= : Définit le délai en secondes avant que le système n’entre en hibernation après une suspension ou une veille hybride.
  • HybridSleepDelaySec= : Si vous utilisez la veille hybride, vous pouvez spécifier un délai après lequel l’hibernation doit être déclenchée.

Lorsque vous modifiez la configuration, pensez à redémarrer daemon systemctl :

sudo systemctl daemon-reload

Quelques autres commandes pour gérer l’alimentation et mise en veille sur Linux

Inhiber la mise en veille automatique (empêcher la mise en veille)

Si vous souhaitez empêcher temporairement le système de passer en veille, vous pouvez inhiber la mise en veille avec la commande suivante :

systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

Pour annuler cette inhibition et permettre de nouveau la mise en veille :

systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target

Gestion de l’alimentation de l’unité centrale (CPU)

Vous pouvez utiliser cpupower pour gérer l’utilisation du processeur et ses fréquences, ce qui affecte la consommation d’énergie.

cpupower frequency-info
cpupower frequency-set -g powersave # Mode économie d’énergie

Gestion de la batterie

Pour vérifier l’état de la batterie et les paramètres de gestion d’énergie, la commande suivante est utile :

upower -i /org/freedesktop/UPower/devices/battery_BAT0

Commandes pour vérifier la prise en charge des modes de gestion d’énergie

Avant d’utiliser certaines commandes, il peut être utile de vérifier si votre système prend en charge certains états de veille/hibernation avec systemd.

  • Vérification de la prise en charge de la mise en veille :
cat /sys/power/state

La sortie devrait afficher une liste d’états pris en charge comme freeze, mem, disk, où :

  • freeze : Suspendre
  • mem : Mise en veille
  • disk : Hibernation

Paramétrage des états de gestion d’énergie via des fichiers de configuration

Certains paramètres de gestion de l’énergie, comme les temporisations pour passer en veille ou les niveaux de batterie critique, peuvent être configurés dans les fichiers de configuration suivants :

  • /etc/systemd/sleep.conf : Ce fichier permet de définir des options liées à la mise en veille et à l’hibernation, telles que le délai avant la mise en veille automatique.
  • /etc/UPower/UPower.conf : Pour les systèmes qui utilisent UPower pour la gestion de l’énergie, ce fichier contrôle divers paramètres comme l’action à effectuer lorsque la batterie atteint un niveau critique.

L’article Modes de mise en veille Linux et configuration et commandes pour passer en veille est apparu en premier sur malekal.com.

Enregistrer un commentaire

0 Commentaires