CentOS6.5ではデフォルトでacpidというデーモンプロセスが実行されています。このプロセスの概要についてまとめました。
※目次をクリックすると目次の下部にコンテンツが表示されます。
acpidとは?
1)psコマンドの出力内容は?
$ ps -ef root 1215 1 0 Jun05 ? 00:00:00 /usr/sbin/acpid
2)どのパッケージに属する?
$ rpm -qf /usr/sbin/acpid
acpid-1.0.10-2.1.el6.x86_64
3)acpidパッケージの概要
“yum info acpid”コマンドでパッケージの概要を確認しました。
①サマリー
ACPI Event Daemon
②URL
http://acpid.sourceforge.net/
③説明
acpidはACPIイベントをユーザー空間のプログラムにディスパッチするデーモン。
※ACPI (Advanced Configuration and Power Interface)
PC/AT互換機等の電源制御と構成要素に関する公開された統一規格
acpidの概要
・acpidは、ユーザースペースプログラムにACPIイベントを通知するように設計されている。
・acpidは、システムブート中に起動され、バックグラウンドプロセスとして実行される。
・イベントファイル(/proc/acpi/event)を開き、すべての行を読み込む。
行を読んでイベントを受け取るとルールのリストを調査し、そのイベントとマッチするルールを実行する。
・ロックファイル(/var/lock/acpid)が存在する場合は、受信したACPIイベントを無視する。
・ルールファイル以外にもacpidはUNIXドメインソケット(/var/run/acpid.socket)の接続も受け取る事が出来る。
アプリケーションはこのソケットに接続できる。一度接続されるとacipidはすべてのACPIイベントのテキストをクライアントに送信出来る。
どのACPIイベントメッセージを感知してフィルタリングするかはクライアント側で行う。
・acpidは、SIGHUPやacpidのexit以外はクライアントソケットをクローズしない。
・acpidはsyslogにすべてのアクティビティを記録する。
・acpidは、システムブート中に起動され、バックグラウンドプロセスとして実行される。
・イベントファイル(/proc/acpi/event)を開き、すべての行を読み込む。
行を読んでイベントを受け取るとルールのリストを調査し、そのイベントとマッチするルールを実行する。
・ロックファイル(/var/lock/acpid)が存在する場合は、受信したACPIイベントを無視する。
・ルールファイル以外にもacpidはUNIXドメインソケット(/var/run/acpid.socket)の接続も受け取る事が出来る。
アプリケーションはこのソケットに接続できる。一度接続されるとacipidはすべてのACPIイベントのテキストをクライアントに送信出来る。
どのACPIイベントメッセージを感知してフィルタリングするかはクライアント側で行う。
・acpidは、SIGHUPやacpidのexit以外はクライアントソケットをクローズしない。
・acpidはsyslogにすべてのアクティビティを記録する。
acpidのルールの定義
・ルールは、/etc/acpi/eventsディレクトリ内のファイルに定義されている。
上記ディレクトリ内でドットで始まるファイルとチルダ~で終わるファイル以外のすべてのファイル内のルールを解析する。
・各設定ファイルでは、イベントとアクションの2つを定義する。
例)power.conf
event=button/power.*
action=/etc/acpi/actions/power.sh
・イベントの定義の値は、正規表現で記述され、どのイベントとマッチするか設定される。
・アクションの定義の値は、bin/shで実行されるコマンドラインで、イベントがマッチした際に実行される。
アクションの定義の値には、”%”という文字は特別な意味を持っていて予約されている。
”%e”は、このアクションがinvokeされたイベントに展開される。
上記ディレクトリ内でドットで始まるファイルとチルダ~で終わるファイル以外のすべてのファイル内のルールを解析する。
・各設定ファイルでは、イベントとアクションの2つを定義する。
例)power.conf
event=button/power.*
action=/etc/acpi/actions/power.sh
・イベントの定義の値は、正規表現で記述され、どのイベントとマッチするか設定される。
・アクションの定義の値は、bin/shで実行されるコマンドラインで、イベントがマッチした際に実行される。
アクションの定義の値には、”%”という文字は特別な意味を持っていて予約されている。
”%e”は、このアクションがinvokeされたイベントに展開される。