systemd serviceジェネレーターとは?
Linuxのsystemdで使うserviceユニットファイルを、フォームに入力するだけで自動生成できるツールです。Type・Restart・セキュリティオプションなどを選択式で設定でき、設置用のコマンドもあわせて出力します。手書きで書くと起きがちな書式ミスを防げます。
よく使うType設定の違い
| Type | 挙動 | 用途 |
|---|---|---|
| simple | ExecStartのプロセスがメインプロセス | Node.js、Pythonアプリなど |
| forking | 親プロセスが終了し子プロセスが残る | Apache、nginxなど |
| oneshot | 実行完了後にプロセスが終了 | 初期化スクリプト、バッチ処理 |
| notify | sd_notify()で起動完了を通知 | systemd対応アプリ |
Restart設定の選び方
alwaysはどんな終了でも再起動するため、Webサーバーなど常時稼働が必要なサービスに向いています。on-failureは異常終了時のみ再起動するため、正常終了で止めたいバッチ処理に適しています。