Slide 1

Slide 1 text

常駐サービスを実現する デーモンプロセス Feb. 23rd, 2025 Satoru Takeuchi X: satoru_takeuchi 1

Slide 2

Slide 2 text

デーモンプロセスとは ● 常駐サービスを実現するプロセス ○ systemdの”*.service”というユニットに結びつくプロセスはデーモン ● 端末のハングアップに影響を受けない ○ 端末に結びついていないセッションに属する => 端末のハングアップの影響を受けない ● “demon(悪魔)”ではなく”daemon(守護神)” 2

Slide 3

Slide 3 text

デーモン図解 3 デーモン用のセッション デーモンプロセス セッション 端末

Slide 4

Slide 4 text

psで見るデーモン 4 $ ps ajx PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND ... 1 330 330 330 ? -1 S

Slide 5

Slide 5 text

サービスの設定ファイル再読み込み機能の実現方法 ● デーモンプロセスは通常再起動せずに設定ファイルを再読み込みする機能がある (e.g. systemd reload) ● 設定ファイルの再読み込みは一般にSIGHUPを使う ○ デーモンプロセスは端末に結びついていない ○ では端末終了時に使う SIGHUPを設定ファイルの再読み込み用に使おうという考え方 5

Slide 6

Slide 6 text

まとめ ● 常駐サービスを実現するプロセスをデーモンプロセスと呼ぶ ● 端末と結びついていないため、あらゆる端末の接続が切れても終了しないように なっている ● 設定ファイルの再読み込みには一般にSIGHUPシグナルを使う 6