Introduction à acpid
Le paquet acpid (Advanced
Configuration and Power Interface event Daemon) est un démon
complètement flexible, totalement extensible pour délivrer les
événements ACPI. Il écoute sur les interfaces et quand un événement
arrive, exécute des programmes pour gérer l'événement. Les
programmes qui sont exécutés sont configurés au travers une
collection de fichiers de configuration, ils peuvent être mis en
place par les paquets ou par l'utilisateur.
Note
D'autres paquets peuvent également gérer certains événements ACPI
et peuvent entrer en conflit avec ce paquet. Par exemple,
elogind-252.9 (voir la documentation
de Handle*=
dans logind.conf(5)
pour plus de détails) et UPower-1.90.2 (utilisé par plusieurs
environnements de bureau comme GNOME, KDE et XFCE pour gérer les
événements ACPI). Si vous avez installé un tel paquet et qu'il
suffit pour votre usage, ce paquet n'est probablement pas
nécessaire. Si vous avez vraiment besoin de ce paquet, vous devez
soigneusement configurer ce paquet et les autres paquets qui
pourraient gérer des événements ACPI pour éviter des conflits. En
particulier, elogind-252.9
gère certains événements ACPI par défaut, donc la gestion de ces
événements par elogind-252.9
doit être désactivée si vous gérez ces événements par acpid (de
nouveau, consultez logind.conf(5)
pour plus de détails).
This package is known to build and work properly using an LFS 12.1
platform.
Informations sur le paquet
Installation de acpid
Installez acpid en exécutant les
commandes suivantes :
./configure --prefix=/usr \
--docdir=/usr/share/doc/acpid-2.0.34 &&
make
Ce paquet n'a pas de suite de tests.
Maintenant, en tant qu'utilisateur root
:
make install &&
install -v -m755 -d /etc/acpi/events &&
cp -r samples /usr/share/doc/acpid-2.0.34
Configurer acpid
acpid est configuré par des
événements définis par l'utilisateur. Placez les fichiers
événements dans le répertoire /etc/acpi/events
. Si un événement arrive,
acpid parcourt
récursivement les fichiers d'événements dans l'ordre pour voir si
la "regex" définie après "event" correspond. Si c'est le cas,
l'action est exécutée.
Le court exemple suivant met le système en veille lorsque l'écran
de l'ordinateur portable est fermé (ce qui
nécessite pm-utils-1.4.1). L'exemple désactivée
également la gestion par défaut de l'événement de fermeture de
l'écran par elogind-252.9
lorsque le système est sur batterie et n'est pas connecté à un
écran externe, pour éviter un conflit :
cat > /etc/acpi/events/lid << "EOF"
event=button/lid
action=/etc/acpi/lid.sh
EOF
cat > /etc/acpi/lid.sh << "EOF"
#!/bin/sh
/bin/grep -q open /proc/acpi/button/lid/LID/state && exit 0
/usr/sbin/pm-suspend
EOF
chmod +x /etc/acpi/lid.sh
mkdir -pv /etc/elogind/logind.conf.d
echo HandleLidSwitch=ignore
> /etc/elogind/logind.conf.d/acpi.conf
Malheureusement, tous les ordinateurs n'appellent pas les
événements ACPI de la même façon (par exemple, l'écran peut être
reconnu comme LID0
au lieu de
LID
). Pour déterminer comment votre
bouton est reconnu, utilisez l'outil acpi_listen. Vous pouvez
également regarder dans le répertoire samples
dans /usr/share/doc/acpid-2.0.34
pour plus d'exemples.
Script de démarrage
Pour démarrer acpid
automatiquement quand le système est redémarré, installez le
script de démarrage /etc/rc.d/init.d/acpid
du paquet blfs-bootscripts-20240209.
make install-acpid