web-dev-qa-db-ja.com

電源ボタンが押されたときにスクリプトを実行する

マシンをオフにする代わりに、電源ボタンを押すと、スクリプトを実行しようとしています。 Ubuntu Server 13.04を実行していますが、回答もServer 14.04で動作する必要があります。

ACPIイベントなどを見て、/etc/acpi/powerbtn.shファイルと/etc/acpi/events/powerbtnファイルを編集しようとしましたが、どこにも運がありません。

それで、このページを読んだ後 https://wiki.archlinux.org/index.php/acpid 、指示通りSudo journalctl -fを実行しましたが、うまくいきませんでした。そこでSudo acpi_listenを試して、ACPIイベントリスナーにアクセスしました。ただし、そこからでも、電源ボタンを押しても出力はまったくありませんでした。

ACPIの前に電源ボタンイベントをキャッチする別のサービスがありますか?電源ボタンを押したときにスクリプトを実行するには、どのファイルを編集する必要がありますか?

Sudo xevも試しましたが、電源ボタンにも出力がありませんでした。

編集:Ubuntu Desktopシステムもあり、そのシステムでACPIから出力を取得でき、/etc/acpiスクリプトを編集できます。 UnityにACPIを奇跡的に有効にするものがインストールされていますか?

もう一度編集:最終インストールを行ってしまいました... ACPIは機能しました。私が実験していたときに何かを台無しにして、最初にこの問題の解決策を見つけようとしたのだと思います。私がしたことは、pythonスクリプトを/etc/acpi/に配置し、/etc/acpi/powerbtn.shの先頭に次の2行を追加したことです。

Sudo python my_python_script.py
exit 0

そしてそれは働いた。みんなありがとう。

7
zaxvo

ここで説明し、詳細に説明するように、スクリプトを実行レベル6に配置するだけではどうですか。

マシンが自動的にシャットダウンする前にコマンドを実行する方法?

1
Keith Pawson

pythonスクリプトを/ etc/acpi /に配置し、次の2行を/etc/acpi/powerbtn.shの先頭に追加します

Sudo python your_python_script.py
exit 0
1
Meetai.com