systemdの*.serviceの書き方

ディレクトリ: /etc/systemd/system/*.service

[Unit]
Description=Load dump capture kernel
After=local-fs.target

[Service]
Type=oneshot
ExecStart=/opt/bin/run-kexect.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Unit, Service, Installのセクションから成り立ち、Unit, Installは共通的な設定内容、Serviceはサービスを実行するため

### Unitセクション
Description: ユニットの説明
After/Bifore: 指定したユニットの実行順番。Afiter=bar.serviceの場合、bar.serviceのstart-up処理が終わるまで実行しない
Requires/Wants: ユニットの依存関係の定義 Wants=bar.service など
その他: man 5 systemd.unit

### Serviceセクション
Type: Typeには以下の5つがあり、設定がなければsimpleがデフォルトで使用される
L simple, forking, oneshot, notify, dbus
ExecStart: 実行するコマンドラインを書く
RemainAfterExit: typeがoneshotの場合は、コマンド実行後もステータスをアクティブにする

### Installセクション
WantedBy/RequiredBy: systemctl enable xxxでユニットをenableした時に、.wants, .requiredにシンボリックリンクを作る
/etc/systemd/system/multi-user.target.wants/

なるほど