How-to
Enable immutable backups in PBS.
Combine ZFS snapshots and Remote Sync to object-lock/WORM storage so backups cannot be altered or deleted during the lock window.
Steps
- Set retention + prune/GC cadence. Define daily/weekly/monthly retention and schedule prune/GC outside backup windows.
- Enable ZFS snapshots for immutability. On the datastore pool, configure snapshot schedules matching your retention lock window.
- Add Remote Sync to WORM/object-lock storage. Point Remote Sync to a secondary PBS backed by object-lock/WORM (or S3 with object lock).
- Align lock window with retention. Ensure object-lock retention exceeds your primary retention + grace period.
- Test deletion protection. Attempt to delete a snapshot outside the allowed window to confirm it fails.
- Verify regularly. Run verify on both primary and remote to ensure readable chunks.
Prereqs
- PBS on ZFS with snapshot capability
- Remote PBS or object-lock/WORM target
- Retention policy defined
- Prune/GC windows scheduled
- Verify schedule in place
Quick checks
- Snapshots are present and retained per policy.
- Remote Sync to WORM/object-lock completes.
- Deletion attempts inside lock window are denied.
- Verify passes on both primary and remote.
If something fails
- Ensure pool snapshots run with correct schedules.
- Confirm object-lock retention exceeds prune/GC timing.
- Re-check Remote Sync credentials and namespaces.
- Verify time sync (NTP) across PBS and WORM endpoints.
Related guides
Official docs
See Proxmox guidance on snapshots and sync: PBS remotes and Remote Sync.
Hosted PBS at $7.95/TB.
No storage limits—$7.95/TB with compute and RAM included. We run the infrastructure; you keep control.