web-dev-qa-db-fra.com

Exécuter un script lorsque le bouton d'alimentation est enfoncé

J'essaie d'exécuter un script une fois que j'appuie sur le bouton d'alimentation au lieu de mettre ma machine hors tension. J'utilise Ubuntu Server 13.04, mais toute réponse doit également fonctionner sur le serveur 14.04.

J'ai consulté des événements ACPI et autres, j'ai essayé de modifier les fichiers /etc/acpi/powerbtn.sh et /etc/acpi/events/powerbtn, mais sans succès.

Alors, après avoir lu cette page https://wiki.archlinux.org/index.php/acpid , j'ai lancé Sudo journalctl -f comme indiqué, mais cela n'a pas fonctionné. J'ai donc essayé Sudo acpi_listen et je suis entré dans le programme d'écoute d'événement ACPI. Cependant, même à partir de là, appuyer sur le bouton d'alimentation ne m'a donné aucune sortie.

Existe-t-il un autre service en place qui intercepte les événements du bouton d'alimentation avant ACPI? Quels fichiers devrais-je ensuite modifier pour exécuter mon script lorsque le bouton d'alimentation est enfoncé?

J'ai aussi essayé Sudo xev et cela ne m'a donné aucune sortie sur le bouton d'alimentation.

EDIT: J'ai également un système Ubuntu Desktop et sur ce système, je peux obtenir une sortie de ACPI et je peux éditer les scripts /etc/acpi. Existe-t-il quelque chose installé avec Unity qui active miraculeusement ACPI?

EDIT AGAIN: Nous avons fini par faire une nouvelle installation ... ACPI a fonctionné. Je suppose que je me suis trompé quelque chose lorsque je faisais des essais et que j'ai d'abord essayé de trouver une solution à ce problème. Ce que j'ai fait est de placer mon script python dans /etc/acpi/, puis d'ajouter les deux lignes suivantes en haut de /etc/acpi/powerbtn.sh

Sudo python my_python_script.py
exit 0

Et ça a marché. Merci les gars.

7
zaxvo

Pourquoi ne pas placer votre script au niveau d'exécution 6 comme mentionné et détaillé ici:

Comment exécuter une commande avant que la machine s'éteigne automatiquement?

1
Keith Pawson

Placez votre script python dans/etc/acpi /, puis ajoutez les deux lignes suivantes en haut de /etc/acpi/powerbtn.sh

Sudo python your_python_script.py
exit 0
1
Meetai.com