meta data for this page
gc
GC is divded into 2 phases:
- GC phase1 (mark used chunks), where all backups are traversed and each used chunk is “touched” to update
atime. - GC phase2 (sweep unused chunks), where all unused (not recently atime-d) are removed.
atime cutoff
PBS doesn't rely on atime updated from regular access. During GC phase 1 it explicitly updating atime timestamp via utimensat call. It should work irrespective to FS mount options. But for some strange FS or remote storages PBS adds some safety precautions by default:
As safety precautions for filesystems with lazy atime or broken atime, there is a 24h+5min safety window. If atime of chunk is outside this range it will be removed.
Disabling atime cutoff is absolutely safe on ZFS filesystem despite of dataset mount options (By default ZFS is using relatime). See:
how do PBS calculate a-time
To change atime cutoff go to Datastore → <pool> → Options → Tuning Options:
