Kozupon.com    
 
 chkconfigでモジュール起動リストに登録する!


chkconfigで各種起動スクリプトの管理を行う場合に、以下のように起動スクリプトのステータスを確認しながら管理する。


1.各起動スクリプトのステータス表示

# chkconfig --list
fcron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
xinetd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
apache 0:off 1:off 2:on 3:on 4:on 5:on 6:off
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
pgsql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
pop-before-smtp 0:off 1:off 2:on 3:on 4:on 5:on 6:off
xinetd based services:
proftpd: off
imap: on
pop3: on

各ランレベルのステータスを見るには、上記のコマンドで行う。


2.起動可、起動不可の設定

起動スクリプトのランレベル別の起動可、起動不可は以下のコマンドで設定する。

1)起動可
# chkconfig [起動スクリプト名] on

2)起動不可
# chkconfig [起動スクリプト名] off


3.起動スクリプトをステータスリストへ反映する

以下は、/etc/init.dディレクトリに作成したPostfixの起動スクリプトである。

#!/bin/bash

start() {
echo -n "Starting postfix: "
postfix start
return 0
}
stop() {
echo -n "Stoping postfix: "
postfix stop
return 0
}
case "$1" in
start)
start
;;
stop)
stop
;;
esac

これを、パーミッション755で登録すれば一応マシン起動時にpostfixは起動する。しかし、chkconfigには登録されない。では、chkconfigのステータスリストに登録するにはどのようにすればいいか。以下の文字の濃い部分を記入する。

#!/bin/bash

# chkconfig: 2345 35 35
# description: Postfix Script

start() {
echo -n "Starting postfix: "
postfix start
return 0
}
stop() {
echo -n "Stoping postfix: "
postfix stop
return 0
}
case "$1" in
start)
start
;;
stop)
stop
;;
esac

2345はrunlevelを表していて、2345で起動することが出来ると言う意味。35は、S35postfixでrc?.dに存在すると言う意味。後の35は、K35postfixでrc?.dに存在すると言う意味。descriptionは、コメントだから別に何を書いてもいい。

# chkconfig --add postfix

これでステータスリストへ追加された。

以上

 


 
 
 



Copyright 2005 Kozupon.com.