upstartスクリプトの名前を指定する方法と場所を指定する方法は?

upstartスクリプトの名前を指定する方法と場所を指定する方法は?

起動時に監視キッカーを起動したいのですが、名前を何に指定するのか、起動スクリプトをどこに配置するのかわかりません。

start on startup
respawn
script
  /usr/sbin/watchdog
end script

引用:http://upstart.ubuntu.com/cookbook/

また、sysVinit、init.d、rc.local、upstart(最新と最高?)の違いを理解しようとしています。

同じことをする方法が多すぎるのはなぜですか?たとえば、次のようになります。

service watchdog start 
/etc/init.d/watchdog start
/usr/sbin/watchdog

ベストアンサー1

Upstart システム操作には.conf拡張子があり、次の場所に配置されます。/etc/init。したがって、これらの行を含むエントリを作成でき、/etc/init/watchdog.conf有効なUpstartサービス定義が必要です。

  1. service watchdog start:このserviceコマンドは通常使用する正しいinitサービスを選択するスクリプトです(つまり、Upstartコマンドまたはスクリプトを実行するか、/etc/init.d使用している場合はsystemdを呼び出すかどうか)。systemctl
  2. /etc/init.d/watchdog startSystem V init スクリプトを直接呼び出します。このタスクにUpstartを使用したい場合は、これをしたくありません。
  3. /usr/sbin/watchdogバイナリを直接実行するだけです。これは(IMHO)プログラムがデーモン化されない限り、デバッグにのみ役立ちます。プロセスをデーモン化すると、initスクリプトの監視および制御機能だけでなく、Upstartの再生成機能も失われます。

(2)人々はしばしばサービスを開始するために構造化され制御された方法が必要ですが、(3)提供できないために存在します。 (1)は(2)十分な機能を提供していないために存在します(これがUpstart、systemd、OpenRCなどが作成された理由です)。

おすすめ記事