2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

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

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

以上

コメント