GNU/Linux >> Linux の 問題 >  >> Cent OS

chkconfig を使用して起動時にサービスを有効または無効にする方法

CentOS/RHEL は、システムのさまざまなランレベルで開始されるサービスを管理するためのシンプルなコマンドライン ツール (chkconfig) を提供します。 chkconfig では、実際の init スクリプトにコメント行を追加して、サービスを開始する必要がある実行レベルと、実行レベルの初期化中に相対的にいつサービスを開始するかを指定する必要があります。 (init スクリプトは特定の順序で処理され、他のサービスに依存するサービスが依存するサービスの後に開始されるようにします。) httpd init スクリプトから取得したこれらの行は次のとおりです。

# chkconfig: 345 85 15
# description: Apache is a World Wide Web server.  It is used to serve
# HTML files and CGI.

こちら、
345 – サービスがデフォルトで有効になるランレベル。
85 – 優先順位を開始します。数値が小さいほど優先度が高くなり、特定のランレベル内でサービスがより早く開始されます。
15 – 優先順位を停止します。数値が小さいほど優先度が高くなり、特定のランレベル内でサービスがより早く停止されます。

chkconfig を使用してサービスを一覧表示する

どのサービスがどの実行レベルで開始されたかのリストを取得するには、コマンド「chkconfig –list」を使用します 」。

# chkconfig --list
acpid          	0:off	1:off	2:on	3:on	4:on	5:on	6:off
auditd         	0:off	1:off	2:on	3:on	4:on	5:on	6:off
blk-availability	0:off	1:on	2:on	3:on	4:on	5:on	6:off
cgconfig       	0:off	1:off	2:off	3:off	4:off	5:off	6:off
...

必要に応じて、追加の引数として名前を追加できます。chkconfig は、そのサービスの情報のみを一覧表示します。以下は、私のシステムでの chkconfig –list iptables の出力です:

# chkconfig --list iptables
iptables       	0:off	1:off	2:off	3:on	4:on	5:on	6:off

この場合、chkconfig は実行レベル 3、4、および 5 で iptables サービスが開始されることを報告します。

起動時のサービスの有効化または無効化

この例では、iptables サービスを使用します。必要に応じて、サービスが開始される現在の規則をリストします。

# chkconfig --list iptables
httpd           0:off   1:off   2:off    3:off    4:off    5:off    6:off

ランレベルを指定せずに「chkconfig on」を実行すると、ランレベル 2、3、4、および 5 でサービスが有効になります。例:

# chkconfig iptables on
# chkconfig --list iptables
iptables       	0:off	1:off	2:on	3:on	4:on	5:on	6:off

同様に、すべての実行レベルでサービスを無効にするには、「chkconfig off」コマンドを使用します。例:

# chkconfig iptables off
# chkconfig --list iptables
iptables       	0:off	1:off	2:off	3:off	4:off	5:off	6:off

chkconfig 微調整

–レベル chkconfig にオプションを指定して、変更するランレベル (オンまたはオフ) を指定できます。他のランレベルは変更されません。これにより、ランレベル 3 および 5 で iptables を開始するようにシステムが構成されます:

# chkconfig --level 35 iptables on
# chkconfig --list iptables
iptables       	0:off	1:off	2:off	3:on	4:off	5:on	6:off

chkconfig を使用してサービスを追加する

chkconfig の推奨事項に従ってすべての実行レベルに新しいサービスを追加するには、次のコマンドを使用します:

# chkconfig --add [servicename]

chkconfig は、サービスのすべてのリンクを正しいディレクトリに一度に設定します。

注意 :アプリケーションまたはサービスがインストールされると、初期化スクリプトが生成され、/etc/init.d に自動的に追加されます。したがって、サービスの名前を特定するのが難しい場合は、/etc/init.d にアクセスし、適切なスクリプトを見つけて、その内容からサービス名を取得します。

サービス情報のリセット

/etc/rc.d ディレクトリ ツリーのバックアップがあり、システムに戻って復元する方法がある限り、サービスで遊ぶことは教育的です。ただし、通常、この種の抜本的なアクションは必要ありません。代わりに、次のコマンドを発行して、サービスの起動優先度やその他の情報を推奨設定に戻すことができます。

# chkconfig [servicename] reset

このコマンドは、すべてを (できれば) 正常なデフォルトに戻します。

chkconfig を使用してサービスを削除する

サービスを使用する必要がなくなった場合は、起動時に「chkconfig off」スイッチを使用してサービスを無効にすることができます:

# chkconfig [servicename] off

次に、次のコマンドでサービスの実行を停止する必要があります:

# service [servicename] stop

前のコマンドはすぐに有効になります。ただし、この手順を完了するために、次のように入力して chkconfig 管理ツールから削除することをお勧めします。

# chkconfig --del [servicename]


Cent OS
  1. CentOS / RHEL 7 :NTP を有効にして、新規インストール後に起動時に開始します (chrony を無効にします)

  2. CentOS/RHEL で rpc.quotad サービスを無効にする方法

  3. Ubuntu でサービスを無効にする方法

  1. CentOS / RHEL 6,7 :XDMCP サービス (GDM) を有効または無効にする方法

  2. CentOS/RHEL で avahi-daemon サービスを無効にする方法

  3. CentOS/RHEL 8 で Firewalld を停止/無効にする方法

  1. Ubuntu18.04でUFWファイアウォールを有効/無効にする方法

  2. RHEL 8 / CentOS8Linuxで起動時にサービスを開始する方法

  3. AlmaLinuxでファイアウォールを無効/有効にする方法