web-dev-qa-db-ja.com

Redhat、CentosでLinux initスクリプトの起動順序を変更する方法

この変更から Linuxサービスの起動/起動順序を変更する方法は? シンボリックリンクの値を変更すると、起動順序が変更されることは明らかです。

Debianデリバティブでは、

update-rc.d Apache2のデフォルトは20 80

Centos/Redhatにも同様のコマンドがありますか?

もしそうならそれは何ですか?

そして、initスクリプトのヘッダーで可能な変更は何ですか?

注:(systemdやupstartではなく)initシステムを使用する必要があります

5
forum.test17

別の方法として、サービス初期化スクリプトの# chkconfig:で始まる行を直接変更します。これは chkconfig(8) のmanページで説明されています。

ランレベルファイル

Chkconfigで管理できる各サービスには、そのinit.dスクリプトに2行以上のコメント行を追加する必要があります。最初の行は、サービスがデフォルトで開始されるランレベルと、開始および停止の優先レベルをchkconfigに通知します。サービスをデフォルトでどのランレベルでも開始しない場合は、ランレベルリストの代わりに-を使用する必要があります。 2行目にはサービスの説明が含まれ、バックスラッシュで継続することにより複数行に拡張できます。

たとえば、random.initには次の3行があります。

# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
#              higher quality random number generation.

これは、ランダムスクリプトはレベル2、3、4、および5で開始する必要があり、開始優先度は20であり、停止優先度は80である必要があることを示しています。説明の内容を理解できるはずです。 \は行を継続させます。行の前の余分なスペースは無視されます。

スクリプトを変更した後、そのサービスのchkconfigオプションを指定してresetコマンドを(ルートとして)実行する必要がある場合。 「リセット」を使用すると、chkconfigは、設定された実行レベルで、指定された優先順位で開始/停止シンボリックリンクを自動的に作成します。

7
Diamond

上記の回答に詳細を追加したい

特にcentosでscripsを開始するために、そのような代替手段はありません

update-rc.d 

デバインで

最も簡単な方法は、スクリプトを変更することです 手動で ここで説明されているように== /etc/init.d/postfixからのコード

#!/bin/bash
#
# postfix      Postfix Mail Transfer Agent
#
# chkconfig: 2345 80 30
# description: Postfix is a Mail Transport Agent, which is the program \
#              that moves mail from one machine to another.
# processname: master
# pidfile: /var/spool/postfix/pid/master.pid
# config: /etc/postfix/main.cf
# config: /etc/postfix/master.cf
#
# Based on startup script from Simon J Mudd <[email protected]>
# 25/02/99: Mostly s/sendmail/postfix/g by John A. Martin <[email protected]>
# 23/11/00: Changes & suggestions by Ajay Ramaswamy <[email protected]>
# 20/01/01: Changes to fall in line with RedHat 7.0 style
# 23/02/01: Fix a few untidy problems with help from Daniel Roesen.

### BEGIN INIT INFO
# Provides: postfix MTA
# Required-Start: $local_fs $network $remote_fs
# Required-Stop: $local_fs $network $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start and stop postfix
# Description: Postfix is a Mail Transport Agent, which is the program that
#              moves mail from one machine to another.
### END INIT INFO
0
forum.test17

/etc/rcX.dディレクトリのシンボリックリンクの名前を手動で変更して、ブート順序を変更できます。

UPD:RHEL/CentOSでは、ntsysvまたはchkconfigと呼ばれるコマンドを使用します。

0
Maxiko