systemdのSysV initスクリプトを使用できますか?

systemdのSysV initスクリプトを使用できますか?

Ubuntu 14には複数のSysV初期化スクリプト(/etc/init.d/)があります。

systemdユニットファイルを動的に生成するUbuntu 16に移行した後は、実際には機能しませんでした。一部のサービスは開始でき、一部のサービスは開始できません。

私の意見は次のとおりです。

  1. SysV初期化スクリプト(/etc/init.d/- > )を再配置/var/lib/my-services/し、スクリプトを介してサービスを開始できることを確認してください。

  2. 適切なsystemdユニットファイルの生成(/etc/systemd/system)と再配置されたSysV初期化スクリプトの使用(/var/lib/my-services/

SysVinitスクリプトを再利用できますか?またはSysV適用されない特定のコンテンツを含めることができますかsystemd

アップデート#1:SysVUbuntu 16のApache2は初期化スクリプト()と共にデフォルトで提供されています/etc/init.d/apache2systemdApache2の例はありますか?

ベストアンサー1

systemdには以前のバージョンとの互換性がありますが、1対1ではありません。たとえば、SysV initスクリプトではカスタムサブコマンドを追加できますが、systemdでは追加できません。

私の経験では、古いinitスクリプトを正常に実行しようとすると、追加のデバッグや奇妙な動作が発生する可能性があります。

initスクリプトをシステム単位のファイルに書き換えることで、長期的に時間を節約できると思います。

標準のサードパーティ製ソフトウェアを使用している場合、プロジェクトはすでに利用可能な独自のシステム単位ファイルを提供する可能性が高くなります。

おすすめ記事