web-dev-qa-db-ja.com

サービスを設定するにはどうすればよいですか?

Ubuntu Server 11.04ヘッドレスボックスでサービスとして実行したいスクリプトがあります。つまり、正しいファイルを/ etc/init.d /の下に置き、serviceコマンドで制御できるようにします。

これを行う方法を教えてくれるガイドはありますか?

19
Kent Boogaart

15.04またはそれ以降のリリース(systemdを使用)を使用している場合を除き、スクリプトを/etc/init.d/にある例に従うのではなく、Upstartジョブに変換する方がよいでしょう。 (これはSystem Vスタイルのinitスクリプトであり、Ubuntuや他のディストリビューションからは遠ざかっています)。

pstart Cookbook には、Upstartジョブの機能に関する膨大な情報が含まれています。 HOWTOとは言いませんが、そこにある情報と/etc/init/にあるストックのUbuntu Upstartジョブを調べることを組み合わせれば、画像を得ることができます。

クックブックのセクション4と5から始めることをお勧めします。 "概念と用語" および "構成"

14
Mark Russell

Upstartスクリプトを作成する非常に簡単な例を次に示します。 https://wiki.frugalware.org/index.php/Upstart_Job_HOWTO

更新:上記のリンクが壊れています。スクリプトの例を次に示します。

description "My startup service"
author "You or someone else"
version "3.14"

pre-start script
    echo 'Starting my service ...'
end script

start on net-device-up
stop on runlevel [!2345]

console output

respawn

exec /path/to/your/custom/script

必要に応じて適応します。

スクリプトは/etc/init/yourfilename.confに配置する必要があります

次に、次を使用して構成を再読み込みします。

Sudo initctl reload-configuration

そして、すべてがOKなら、あなたはそれを始めることができるはずです:

Sudo start yourfilename
10
lenooh