Off-site snapshots for people who run five servers, not five hundred.
Gerza Backup wraps restic in a scheduler, a retention policy and a nagging email. One config file per host. No agent, no dashboard to babysit.
How it works
Drop a config in /etc/gerza/backup.toml, enable the timer, and forget about it. Snapshots are deduplicated and encrypted client-side before anything leaves the machine — the storage backend only ever sees ciphertext.
[repo] url = "s3:s3.eu-central-1.example-object.net/acme-snapshots" password_file = "/etc/gerza/repo.key" [schedule] every = "6h" prune_on = "sunday" [[path]] include = ["/etc", "/var/lib/postgresql", "/srv"] exclude = ["*.tmp", "/srv/cache"]
# systemctl enable --now gerza-backup.timer # gerza snapshots --last 3 ID Date Host Size Files 9f2c1a04 2026-09-03 06:00:11 db-01 2.1 GiB 48219 9f2c1a04 2026-09-03 00:00:09 db-01 2.1 GiB 48204 71ba33d8 2026-09-02 18:00:07 db-01 2.0 GiB 48191
What you get
- Deduplicated, incremental snapshots — the second backup of a 40 GiB host usually moves under 200 MiB.
- Client-side AES-256 encryption. We cannot read your data, and neither can the object store.
- Retention that actually prunes: keep-hourly, keep-daily, keep-weekly, keep-monthly.
- A weekly digest by email, and a loud one the moment a job fails twice in a row.
- Restore to any host with the repo key — no vendor lock, the repo is plain restic format.
Pricing
| Plan | Hosts | Included storage | Per month |
|---|---|---|---|
| Solo | 1 | 50 GiB | €3 |
| Rack | up to 10 | 500 GiB | €19 |
| Bring your own bucket | unlimited | yours | €0 |
The last row is not a joke. The scheduler is source-available; point it at your own S3-compatible bucket and you owe us nothing.
Status
Storage and API are operational. Planned maintenance windows are announced at least 72 hours ahead on the status page.
Getting in touch
Support and sales: hello@gerza-backup.xyz. We answer on weekdays, usually within a day.