Linux :デーモンとの連携


非常に簡単に言えば、デーモンはバックグラウンドで実行されるサービスプロセスです.
Linux上のデーモンでの作業は、新しいユーザーにとってトリッキーでありえます-歴史的な手荷物と後方互換性のために、現在、同じことをする多くの方法があります.
ちょっと最初にバックグラウンドのビット:ブートローダがカーネルをロードして、すべてが初期化されたあと、最終ステップは始まりますinit プロセス.このプロセスはrootプロセスとも呼ばれ、PID 1 ( PID 0はカーネルの一部です)sched or swapper プロセス).

システム


最近では、実行中のLinuxディストリビューションを使用しますsystemd pid 1として.
systemdの下でサービスを制御するために、あなたはほとんど使用していますsystemctl コマンド.
サービスの状態の確認
systemctl status myservice.service
サービスの開始と停止
systemctl start myservice.service
systemctl stop myservice.service

systemctl restart myservice.service
サービスの有効化と無効化(ブート時)
systemctl enable myservice.service
systemctl disable myservice.service

新しいサービスの追加


新しいサービスを追加するには、/etc/systemd/system/directoryに単位ファイルを置く必要があります.
最小/etc/systemd/system/myserviceサービスは次のようになります.
[Unit]
Description=My Awesome Service

[Service]
# Simple service won't do any forking
Type=simple
ExecStart=/path/to/command

[Install]
# Start the service before we get to multi-user mode
WantedBy=multi-user.target
ここでは"daemon reload "を行う必要があります(システムを新しいファイルを拾うように指示します).
systemctl daemon-reload
サービスを有効にして起動します.
systemctl enable myservice.service
systemctl start myservice.service

systemctl status myservice.service

シスヴィット

systemd Linuxへの比較的新しい追加です.伝統的に、Linuxシステムはsysvinitをinitサブシステムとして使っています.それははるかに簡単ですsystemd (元のUnix哲学に近い)、この全体の切り替えの事はLinuxコミュニティに多くの論争をもたらしました.sysvinitを使用しているディストリビューションは、まだ活発に維持されています.
また、これらのコマンドを使用しているソフトウェアやドキュメントもたくさんあります.
sysvinitの下の「サービス」は/etc/initの中の単なるスクリプトです.スタート/ストップ/リスタートなどの引数に応答するディレクトリ.
これはサービスの開始と停止の最初のsysvinitでした.
/etc/init.d/myservice start
/etc/init.d/myservice stop

/etc/init.d/myservice restart
その後service コマンドが追加されました(これは上記とほぼ同じでしたが、必ずしもそうではありません).
service myservice start
service myservice stop

service myservice restart
(これらのコマンドは後方互換である.systemctl システムベースのシステムで)
デフォルトランレベルにサービスを追加する(ブート時に有効にする)
# Debian-based distros
update-rc.d myservice defaults

# Redhat-based distros
chkconfig myservice on

アップスタート


UpStartは、sysvinitの正準によって作成されたイベントベースの置換だったが、今日はもう使用されていません.
あなたがどうにかそれをまだ使っているシステムに動くならば、あなたはほとんどsysvinitの上記のコマンドを使用することができます.
注:これは理解の簡単なwikiから(wip)のトピックのスナップショットです.すべての提案(および反応)を歓迎します.最新版はこちらをご覧ください.Linux: Working With Daemons