Touches d'arrêt et de mise en marche, détection couvercle


Terminologie

1 - Détection - acpi

L'appui sur la touche "Veille" du clavier ou la fermeture du capot sont généralement pris en compte par des modules acpi du noyau. Voir ACPI - Advanced COnfiguration and Power Interface

$ acpi_listen 
button/sleep SBTN 00000080 00000000
button/sleep PNP0C0E:00 00000080 00000004
$ acpi_listen
button/lid LID close
button/lid LID open

2 - Gestion - systemd

Par défaut, systemd gère les évènements acpi liés aux touches Arrêt/Marche, mises en veille, détection couvercle.

Il est possible de redéfinir les actions liées à ces événements :

$ cat /etc/systemd/logind.conf
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# See logind.conf(5) for details

[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
#HandleLidSwitch=suspend
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
#IdleAction=ignore
#IdleActionSec=30min
#RuntimeDirectorySize=10%
#RemoveIPC=yes

Les valeurs définies dans ce fichier peuvent être modifiées. Par exemple, pour que la touche Mise en veille actionne une mise en veille prolongée, remplacer la ligne

#HandleSuspendKey=suspend

par :

HandleSuspendKey=hibernate 

Après modification, redémarrer systemd-logind :

# systemctl restart systemd-logind