Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I run a nightly backup of all my files using rdiff-backup. Can I use rdiff-backup to tell me when changes occurred to a particular file or set of files throughout a certain timeframe?

For example, lets say I have file.txt and here is its recent history

March 4 - nochange
March 3 - changed
March 2 - changed
March 1 - nochange
Feb 28 - nochange
Feb 27 - nochange
Feb 26 - changed
Feb 25 - nochange

I'm trying to figure out if there is a command that would basically tell me:

file.txt changed on the following dates
March 3, March 2, Feb 26

I can use --list-changed-since to show if something has changed or not during that time range. Do I have to just use this --list-changed-since multiple time (one for each backup) to determine which days it changed? Or is there a feature of rdiff-backup that is builtin for what I'm looking for?

share|improve this question
add comment

1 Answer

up vote 2 down vote accepted

To my knowledge there are no built-in feature in rdiff-backup providing the summary you are after.

An alternative to calling --list-changed-since multiple times is to simply parse the content of ./rdiff-backup-data/increments. In there you will find the reverse diffs matching every change, named filename.time.diff.gz. Just remember that if you have a reverse diff for TIME that means the actual change took place at TIME+1.

The easiest way to get a good list of all available backups times, to compare against, is probably to either use "rdiff-backup --parsable-output --list-increments" or to parse ./rdiff-backup-data/increments.*.dir in addition to ./rdiff-backup-data/current_mirror.*.data. Note that --parsable-output gives you epoch time, aka unix time, which then easily can be converted into desired format.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.