.png)
systemd サービスは次のように構成されています:
[Unit]
Description=cprev agent
After=network.target
StartLimitIntervalSec=2
[Service]
Type=simple
Restart=always
RestartSec=15
ExecStart=/home/oleg/.local/bin/cprev-safe-start
[Install]
WantedBy=default.target
次のようにサービスをインストールします。
rsync "$PWD/systemd.service" "$HOME/.config/systemd/user/cprev.agent.service"
systemctl --user daemon-reload
systemctl --user enable cprev.agent.service
systemctl --user restart cprev.agent.service
次のコマンドを使用して、サービスのログを tail できます。
journalctl -f --user -u cprev.agent.service
私の質問は、サービスのログがいっぱいにならないように手動で切り捨てる必要があるのか、それとも systemd がログを管理してくれるのかということです。管理してくれる場合、どのように動作するのでしょうか。
答え1
systemdのドキュメントによると、ログはjournald
デフォルトでディスク容量の 15% または 4GB のいずれか小さい方のサイズ制限で保存されます。/var
がマウントされていない、書き込み不可、または/var/log/journal
存在しない場合、ログは揮発性メモリ ( )journald
にのみ保存されます。/run/log/journal
サービスがsystemdジャーナルの外部に独自のログファイルを作成する場合は、ログローテートそれらを管理するためのエントリ。