web-dev-qa-db-ja.com

chkconfigonとchkconfig--addの違いは何ですか?

Chkconfigonを使用する場合とchkconfig--addを使用する場合の違いは何ですか?

5
DD.

chkconfig --addは、chkconfigによって管理されるサービスのリストにnewサービスを追加します。 --addは暗黙のonだと思います。

chkconfig onはサービスのランレベルを設定します。

そうは言っても、私はシステムに新しいサービスを追加するためにchkconfig -addを使用する傾向がありますが、(RHELのようなシステムでは)それらを管理するためにntsysvを使用します。

7
ewwhite

Redhat/CentOSでは、initスクリプトに次のような1行があります。

#chkconfig:-65 10

上記の行の最初の引数が「-」のときに--addを使用すると、開始リンクは追加されず、強制終了リンクのみが追加されます。したがって、-addを機能させるには、initスクリプトを編集して、たとえば次のように変更する必要があります。

#chkconfig:345 65 10

ただし、chkconfig --add ...が最初の引数として「-」を使用して実行された場合(これはほとんどの場合、rpm postスクリプトからの場合です):後で最初の引数を変更してchkconfig --addを再実行すると、killが実行される限り効果がありません。リンクが存在します。この場合、-listはすべてのランレベルで表示されます。

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

この場合に--addを機能させるには、最初に--delを使用する必要があり、次に--listの出力は次のようになります。

chkconfig --list saslauthd 
 service saslauthdはchkconfigをサポートしていますが、どのランレベルでも参照されていません(run'chkconfig --add saslauthd ')

これで--addを使用でき、目的の効果が得られます。

または、「on」を--level引数とともに使用して、initスクリプトを編集する必要をなくし、最初に--delを続けてから--addを避けることもできます。

1
Michael Enke

どのOSを実行していますか?引数としてサービス名のみを使用してchkconfigを実行する場合、RHELのchkconfigは、そのサービスが現在実行している実行レベルで実行するように設定されているかどうかを確認するだけだと思います(Suess博士は述べています)。

0
Univ426