← Back to team overview

duplicity-team team mailing list archive

Listing old files

 

Listing Old Files (defined to be files in a previous full backup) is
interesting to me.  I'd like to get it to work, if possible.

I've looked at the code a bit, and I believe the following is true
(please correct if not):
1. There is one signature chain for each full backup chain
2. Filenames are stored in signature chains (and the volumes
themselves of course)
3. Duplicity considers any signature chains that aren't the latest to
be 'extraneous' (which means it will be deleted on a cleanup)

So, assuming that the backup location has been cleaned up, the old
signature files are lost.  The only way to get a file list from the
old backup chains at this point is to read the volumes themselves.

If we wanted to make it easier to list Old Files:
A. Don't mark old sig chains as extraneous
B. Consider old sig chains when being given a time for list-current
C. Optionally a fallback mode for deleted old sig chains by skimming
the volume?  Seems like a lot of bandwidth.

What's the cost of (A)?  How big do sig chains grow?

I can write patch for (B) easily enough.

For (C), I assume it's not worth it.  I don't suppose we get lucky by,
say, the archive directory secretly storing a copy of the old sig
chains even after a cleanup or anything?

As I noted in the thread in duplicity-talk, you can restore a file
from a previous backup chain.  Seems odd (from a user perspective)
that you can't list the files.  In Deja Dup, I'd like to be able to
list those old files; the next version will start automatically
creating multiple full backups for safety's sake, and I want to make
sure that all files are listable.  I'd prefer to fix this in duplicity
for everyone, but if ya'll think it's undoable, I can do some hack,
like make separate directories in the backend for each full backup.
But that's more low-level than I wanted to be.  Seems like the same
thing could be done by not deleting sig chains.

-mt



Follow ups