systemd[edit]
プロセスコントロール[edit]
- SysVinit の runlevel の代わり
runlevel | target |
0 | poweroff |
1 | rescue |
2,3 | multi-user |
4 | (未使用) |
5 | graphical |
6 | reboot |
target の変更†[edit]
- systemctl set-default multi-user
- reboot
service file[edit]
- /usr/lib/systemd/system/ にサービスの起動用ファイルを置く
- 例:/usr/lib/systemd/system/apache.service
- systemctl enable サービス名 で /etc/systemd/system/multi-user.target.wants/サービス名.service から /usr/lib/systemd/system/ へ シンボリックリンクが張られる.
- 例:apache.service -> /usr/lib/systemd/system/apache.service
[Service][edit]
WorkingDirectory[edit]
ExecStart[edit]
ExecStop[edit]
- ExecStop のコマンドの実行が終了すると,KillSignal で定められたシグナル(default SIGTERM)がプロセスに送信される.
- これによりプロセスが終了処理を行えるようになる.
- シグナルの送信の仕方は KillMode(default は control-group:子プロセスを含めて全てのプロセスに送信する) で設定する.
- screen コマンドは SIGTERMを受け取ると,即時に停止する.
- プロセスが終了しない場合,TimeoutStopSec で定められた時間(default は 90s)だけ待って,SIGKILL がプロセスに送信される.
- SendSIGKILL = no の場合は,SIGKILLは送信されない.
[Install][edit]
Last-modified: 2025-06-17 (火) 20:52:37