Linuxのacpidプロセスの概要

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のルールの定義
・ルールは、/etc/acpi/eventsディレクトリ内のファイルに定義されている。
 上記ディレクトリ内でドットで始まるファイルとチルダ~で終わるファイル以外のすべてのファイル内のルールを解析する。
 
・各設定ファイルでは、イベントとアクションの2つを定義する。
 
例)power.conf
event=button/power.*
action=/etc/acpi/actions/power.sh
 
・イベントの定義の値は、正規表現で記述され、どのイベントとマッチするか設定される。
 
・アクションの定義の値は、bin/shで実行されるコマンドラインで、イベントがマッチした際に実行される。
 アクションの定義の値には、”%”という文字は特別な意味を持っていて予約されている。
 ”%e”は、このアクションがinvokeされたイベントに展開される。

関連記事の目次

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です