Explain and let readers tune the Snapper timeline snapshot frequency

This commit is contained in:
Djeex
2026-09-09 13:41:47 +02:00
parent c90cd781d3
commit 62d4fe4ec2
2 changed files with 36 additions and 0 deletions
@@ -72,6 +72,24 @@ Then enable the timers that run Snapper's periodic snapshots and cleanup:
sudo systemctl enable --now snapper-timeline.timer snapper-cleanup.timer
```
`snapper-timeline.timer` fires **every hour** by default, that's fixed by the unit itself, not by a config option. Each run takes one snapshot and files it under the appropriate bucket (hourly, daily, monthly, yearly); the `TIMELINE_LIMIT_*` settings covered further down only control how many of each bucket survive, not how often a snapshot is taken. `snapper-cleanup.timer` runs once a day (plus once 10 minutes after boot) to enforce those limits.
::tip
✨ To take timeline snapshots at a different frequency, for example every 6 hours instead of every hour, override the timer instead of editing the package's unit file directly:
```bash [Terminal]
sudo systemctl edit snapper-timeline.timer
```
```ini [override.conf]
[Timer]
OnCalendar=
OnCalendar=*-*-* 0/6:00:00
```
The empty `OnCalendar=` line clears the packaged `hourly` value first, since systemd otherwise adds new `OnCalendar` lines to the existing ones instead of replacing them. Apply it with `sudo systemctl daemon-reload && sudo systemctl restart snapper-timeline.timer`.
::
::note
Debian's package also ships an APT hook (`/etc/apt/apt.conf.d/80snapper`) that kicks in the moment a config is listed in `SNAPPER_CONFIGS`: from now on, every `apt install`, `apt upgrade` or `apt full-upgrade` automatically gets a snapshot right before and right after it runs, with zero extra effort on your part.