Tips記事
» 2001年10月31日 00時00分 UPDATE

マシン起動時に自動起動するデーモンはどこで設定されている?

[木田佳克,ITmedia]

 キーとなるのは,RPMで構成されているRed Hat系のLinuxで,デーモン起動(制御)に次のように指定していることだ。RPMを利用している人の多くは,日ごろデーモンをコントロールする場合に,このようにコマンド指定しているはずだ。

# /etc/rc.d/init.d/smb start

 これは,/etc/rc.d/init.d/ディレクトリ下のsmbというスクリプトファイルを実行しているものだ(スクリプトには実行権限が設定されている)。最後の「start」はパラメータであり,スクリプトを見ると(# cat /etc/rc.d/init.d/smb| more)startパラメータでどのような処理をするかが記述されている。

 このスクリプトは,デーモンをコマンドラインでコントロールしたり,次のようにシンボリックリンクすると自動起動させることができる。さらに,1つ上の階層を見ると次のようになっていることが分かるだろう。

# ls /etc/rc.d/
init.d  rc.local  rc0.d rc2.d rc4.d rc6.d
rc   rc.sysinit rc1.d rc3.d rc5.d

 rc0.d〜rc5.dのディレクトリには(無効なランレベルを除く),ランレベル別に/etc/rc.d/init.d/下のスクリプトがシンボリックリンクされている。たとえば,/etc/rc.d/rc3.d/下であれば,ランレベル3で起動させたいデーモンが次のようにシンボリックリンクされているのだ。

# ls -l /etc/rc.d/rc3.d/
合計 0
lrwxrwxrwx1 root root 15 10月 30 02:56 K03rhnsd -> ../init.d/rhnsd
lrwxrwxrwx1 root root 17 10月 29 19:32 K05anacron -> ../init.d/anacron
lrwxrwxrwx1 root root 13 10月 29 19:33 K15gpm -> ../init.d/gpm
lrwxrwxrwx1 root root 15 10月 30 02:58 K15httpd -> ../init.d/httpd

以下略

 さらにシンボリックリンクしているファイル名(例:K15httpdなど)にも大切な意味がある。これらの詳細は,Linux How-Toに詳しく解説しているので参考にしてほしい。

・関連リンク
ボタンLinux How-To 第1回 起動スクリプトを知って基礎を理解しよう

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ