meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
vm:proxmox:pbs:issues:gc [2026/10/29 08:49] – ↷ Page moved from vm:proxmox:pbs:issues:pbs:gc to vm:proxmox:pbs:issues:gc niziakvm:proxmox:pbs:issues:gc [2026/10/29 08:49] (current) – ↷ Links adapted because of a move operation 79.137.64.41
Line 1: Line 1:
-====== 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 [[https://man7.org/linux/man-pages/man2/utimensat.2.html|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: 
-[[https://forum.proxmox.com/threads/how-do-pbs-calculate-a-time.166469/|how do PBS calculate a-time]] 
- 
-To change atime cutoff go to Datastore -> <pool> -> Options -> Tuning Options: 
- 
-{{.:pasted:20260408-141538.png}} 
- 
- 
- 
- 
- 
-