Prune command details

A post was split to a new topic: Prune: exclude tags

Does -exhaustive imply -all?

No, -exhaustive only means to find ‘orphan’ chunks that are not referenced by any snapshots. It is a plausible use case that you can delete snapshots with a certain snapshot id and at the same time delete these ‘orphan’ chunks.

I think I understand: -all deletes snapshots (revisions) from all snapshot ids according to the specified retention policies; in doing so it deletes (or fossilizes) any chunks referenced by those revisions but not referenced anywhere else. And -exhaustive deletes chunks that aren’t referenced by any snapshot. Correct?

1 Like

This is correct…

1 Like

Reading this:

The -exclusive option will assume that no other clients are accessing the storage, effectively disabling the two-step fossil collection algorithm.

Actually i am backing up some NAS dirs to a storage. No other client has access to that storage, it’s a bucket i created on B2 only for backup purpose.

So it’s fine to always use

-exclusive ?

To only keep a 7-day history, would it be -keep 0:7 ?

Yes.

However it’s questionable why would you want such a short history? It may not accomplish what you may hope to accomplish (I.e. purging data for various compliance reasons).

Is the following correct?

If the keep option is not specified, no snapshots will be deleted and no new fossils created.

For example (assuming exclusive access to a storage) this command will only delete existing fossils, both referenced and unreferenced:

duplicacy prune -all -exhaustive -exclusive

Feature Request: -persist flag that deletes snapshots no matter if there are missing chunks.
Feature Request: -v verbose flag that prints the chunks that are (currently) deleted

3 Likes