多くの方がまとめてはいますが、個人の学習のためにchkconfigコマンドについてまとめてみました。
chkconfigコマンドとは?
サービスのシステム起動時の挙動設定を行う。システム起動時に自動起動するサービスの設定や不必要なサービスを停止するなどの設定を行う。例えば、サーバ起動時にApacheも同時に起動させたいとき、chkconfigで設定を行うことで実現できる。chkconfig関連オプション
1:サービスの設定リストを閲覧する/sbin/chkconfig --list
onとoffの前についている数字(0〜6)はランレベル(Run Level)と呼ばれるものです。
--list オプションではサービス名指定もできます。
サービス名指定の例:/sbin/chkconfig --list redis
Run Level | 状態 |
---|---|
0 | システムの停止 |
1 | シングルユーザモード |
2 | マルチユーザモード |
3 | マルチユーザモード(コンソールログイン) |
4 | 未使用 |
5 | マルチユーザモード(ディスプレイマネージャ使用) |
6 | システム再起動 |
2: サービス設定の追加
/sbin/chkconfig --add サービス名
3: サービス設定の削除
/sbin/chkconfig --del サービス名
4: サービスの起動設定をランレベル指定で設定する
/sbin/chkconfig --level 2 サービス名 on
上記は[サービス名]のサービスのランレベル2の自動起動設定を有効にする、という意味になります。
複数レベルを指定しての設定も可能です。
便利な使い方
1: 特定のサービスの起動設定を全て有効にする/sbin/chkconfig サービス名 on
2: 特定のサービスの起動設定を全て無効にする
/sbin/chkconfig サービス名 off
3: 複数レベルの設定を行う
/sbin/chkconfig --level 34 サービス名 on
*上記は[サービス名]のサービスのレベル3と4の起動設定を有効にするという意味になります。
注意
変更されたサービスの設定はすぐに反映されるわけではありません。次回システムを起動した際には自動起動されますが、即時に起動させたい場合はサービスの起動を行う必要があります。/sbin/service サービス名 start
startをstopにすると停止、restartにすると再起動という意味になります。