systemd
service start-limit-hit エラーが出る場合
systemd の定義自体が間違っていることが原因で起動に失敗し、再起動を繰り返し limit に到達している場合がある
Unit ファイル(設定ファイル)の書き方
unit file の配置場所
編集するには systemctl edit --full が便利
Except in case of ConfigurationDirectory=, the innermost specified directories will be owned by the user and group specified in User= and Group=.
symlink を使う方法
ファイルにリダイレクトできる
$ journalctl > log.txt
最新から読むには -r
特定のサービスのログ
--unit, -u
start request repeated too quickly
RestartMaxDelaySec とか RestartSec が使えそう
Nix
nix 独自のディレクティブがある。 script とか。
その他
preStart でディレクトリを作ろうとすると権限がない
一時ファイルなら systemd-tmpfiles で管理するのが良さそう
StateDirectory を指定すれば事前に作ってくれる
ReadWritePaths?
依存関係
requires
指定した unit も起動される
順序関係は指定されない
requiredBy は依存される側から同じ指定をするだけ
before, after