パッケージのインストール中に依存サービスを再起動する正しい方法は何ですか?
構成パッケージを作成していますが、構成が影響を受けるサービスを停止して再起動します。今service [stop|restart]は{pre,post}{inst,rm}邪魔に使っています。サービスについてのユーザーの好みを尊重するのでinvoke-rc.d、私はそれが正しい方法である質問をどこかで読みました。しかし、これに関するガイドラインは見つかりませんでした。誰かがそのようなガイドラインを知っていますか?または、どの方法を選ぶべきかについてアドバイスがありますか?パッケージは内部で使用されるものであり、今後2年間はたぶん14.04のみになります。ただ、後継者にsystemdは出来るだけ綺麗な状態を残したいので、心の中で考えています。 invoke-rc.dmanページから: Debianパッケージのメンテナスクリプトによるinitスクリプトへのアクセスはすべて、invoke-rc.dを介して行う必要があります。 Debianポリシーマニュアル、第9章、セクション3.3から: メンテナは、postinst、prerm、postrmなどのパッケージのスクリプト内のinitscriptを処理するために、update-rc.dおよびinvoke-rc.dプログラムによって提供される抽象化レイヤーを使用する必要があります。 ... パッケージメンテナースクリプトは、直接呼び出すのではなく、invoke-rc.dを使用して/etc/init.d/* initscriptsを呼び出す必要があります。 Debianは使用されてsysv-initおりsystemd、直接に移行します。また、ポリシーマニュアルは近いうちに参照されるように更新されると思いますsystemctl。しかし、私が不確かなのはこれです。invoke-rc.d代わりに使用する必要がありserviceますか?dpkg(トリガーを介して)一部のファイルに関心があることを伝えることができるのでdpkg、いくつかのサービスにも関心があることを伝えdpkg、再起動/再読み込みを行う方法はありますか? 明確にするために:私はinitスクリプトを書いていません。PuppetやNTPなどの他のアプリケーションの構成を含むパッケージを提供しているので、スクリプト内の対応するサービスを停止して再起動します。 たとえば、ここではinvoke-rc.dvs に関するDockerの問題serviceです。この問題はまだ解決されておらず、おそらくメンテナである1人が、正しい方法でこれを行うことに間違いなく関心があるとコメントしています。(私の質問はその問題とは無関係です。)