Yanor.net/
Wiki
Blog
GitHub
Sandbox
./?DJB/daemontools/%E6%A6%82%E8%A6%81
dotNet
ASP.NET MVC
PowerShell
AutoHotKey
シェルスクリプト
PHP
Perl
DBIC
Java
JavaScript
TypeScript
Node.js
HTML
Windows
WSL
Windows Server
Windows アプリ
VSCode
UNIX
FreeBSD
Linux
ネットワーク
PostgreSQL
MySQL
Apache
Samba
Git
Mercurial
Subversion
Vim
SSH
Docker
全文検索
AND検索
OR検索
edit
DJB
/
daemontools
概要
マシンブート時にsvscanコマンドを実行する。
svscanプロセスは/service以下にディレクトリ(/service/qmail-sendなど)を見つけるとsuperviseプロセスを起動する。
superviseプロセスは(/service/qmail-send/)runスクリプトを実行され、runスクリプトに書かれたデーモン(qmailやApacheなど)が実行される。
デーモンが終了(異常終了でも正常終了でも)すると、superviseプロセスはrunスクリプトを再実行する。
これによりデーモンがなんらかの理由で終了しても、すぐに勝手に再起動することになる。
daemontoolsはフォアグラウンドで実行されるプロセス(デーモン)しか制御できない
Apacheのように起動と同時に勝手にバックグラウンドに移行するデーモンは扱えない。(というより、DJBはバックグラウンドに移行するデーモンソフトを悪いデザインと考えている)
Apacheの場合、daemontools用に-DNO_DETACHというオプションが用意されている。(そういうオプションがないデーモンソフトだった場合、DJBなら自分で一からプログラムを書く)
この理由のため、runスクリプトで実行するコマンド(デーモン)はexecの引数にして実行する。
参考
http://www.atmarkit.co.jp/flinux/rensai/qmail09/qmail09a.html
http://www.unixuser.org/~euske/doc/daemontools/
http://tools.qmail.jp/daemontools/faq/create.html
http://www.emaillab.org/djb/daemontools/daemontools-howto.html
公式:
http://cr.yp.to/daemontools.html
最新の30件
2023-09-09
JavaScript/React/useEffect/APIリクエストの重複を防ぐ
JavaScript/React/再レンダー/何回目のレンダリングか調べる
JavaScript/React/再レンダー
JavaScript/React/Hooks
2023-08-27
JavaScript/React/Hooks/コンテナコンポーネントからカスタムフックへの移行
it/設定/Git for Windows/Windows Terminalでビジュアルベルを無効にする
Git/GitHub/HTTPSでcloneする
Git/GitHub/HTTPSでcloneする(廃止)
2023-07-30
開発手法/書籍/データ指向プログラミング
開発手法/書籍
2023-07-22
開発手法/コードレビューvsテスト
FrontPage
開発手法
2023-06-13
Docker/開発/ネットワーク/Proxy環境でイメージをビルドする
Docker/開発/ネットワーク/コンテナのDNSサーバを指定する
Docker/インストール/Proxy環境で使う - Linux
2023-06-11
Node.js/環境構築/Volta/yarnのバージョンを指定してインストールする
2023-06-09
UNIX/tmux/設定ファイル - .tmux.conf
2023-06-07
RecentDeleted
2023-05-23
Docker/インストール/Linuxで一般ユーザーでdockerコマンドを使う
Docker/インストール/Docker ComposeをLinuxにインストール
2023-05-21
Docker/Dockerfile/ENTRYPOINTとCMD
2023-05-20
Node.js/yarn/yarn installの負荷を下げる
2023-05-19
Linux/ネットワーク/ssコマンド
2023-05-17
TypeScript/OOP/区分オブジェクト
2023-05-16
Git/設定/includeIfでgitconfigを読み分ける
JavaScript/OOP/書籍リーダブルコード/update_highlightを再リファクタリング
JavaScript/OOP/書籍リーダブルコード
2023-05-15
TypeScript/OOP/データ指向プログラミングとOOP
2023-05-10
Windows-アプリケーション/Adobe Acrobat Reader/.ms-adフォルダーを作らない
更新履歴一覧
edit
Last-modified: 2007-08-28 (火) 08:25:37