他のプロセスが完了するまで初期化スクリプトを遅らせますか?

他のプロセスが完了するまで初期化スクリプトを遅らせますか?

私はDebian Jessieを使用しています。起動中に一部のユーザー入力を読みたいです。これは、/etc/init.d/のカスタムスクリプトとランレベルディレクトリのシンボリックリンクを介して行われます。これでkdm、他のinitスクリプトによって開始されたものが、私のカスタムスクリプトが完了した後にのみ起動したいと思います。

私はこれを追加してこれを達成します。

while test -e /tmp/kdm-boot-lock
do
    echo "waiting for lock-file to be deleted by custom-script"
    sleep 1
done

/etc/init.d/kdmへ

しかし、私は外部ファイルを変更しないソリューションを好みます(アップデートによって変更される可能性があります)。

したがって、質問は次のようになります。kdmカスタムスクリプトが完了する前に他の(変更されていない)init script()が起動しないようにするにはどうすればよいですか?

ベストアンサー1

kdminitscriptを使用しているので、カスタムスクリプトが完了するまで延期する正しい方法は、kdmLSBヘッダーでカスタムスクリプトの依存関係を宣言することです。

# Required-Start: ... yourscript

kdm初期化スクリプトから

# Provides: yourscript

カスタム初期化スクリプトから。

アップグレード時にinitscriptの変更がkdm失われないようにするには、対応するLSBヘッダーをinsservオーバーレイファイル(同じ名前を使用)にコピーして/etc/insserv/overrides編集します。

おすすめ記事