Validation of backups


I’ve been trialling UrBackup for our uses and it’s so far looking to be an excellent system.

I’ve had a little look into the SQLite database and I can see that checksums/hashes are stored of the files - presumably so that UrBackup knows if they have changed when it performs an incremental backup?

What I would like to know is whether or not UrBackup ever checks the validity of the files on disk against those checksums? Does it know if the backup files become corrupted for whatever reason? Does it check the checksum of a file when performing a restore for example, so it can tell you if the restore has failed due to file/db corruption?

The very best commercial backup software will occasionally check the backed up files against the originals to determine if corruption has taken place. Often that software will remove or ‘heal’ broken incremental backups so that a later restore will work properly. I’m not expecting this sort of feature from UrBackup, but I’m curious to know what it’s capable of out of the box as it already has a very impressive list of features.

Sorry if this question has been answered elsewhere - I was not able to find a similar topic.

There is a undocumented command line option to that with e.g.

urbackupsrv verify-hashes -v CLIENTNAME/160702-1406

But the best option would be to use it with ZFS or btrfs which have self-healing capabilities if used with RAID.

Hi Uroni,

Thanks for your reply.

So that command will verify the hashes for that particular client’s backup? It looks like you can also simply specify the client name only - and that verifies all of the files for that client?

Does UrBackup verify hashes when it restores?