How does Duplicity check for modifications (mtime or checksum)

backupduplicity

How does Duplicity determine if the local version of a file has been modified since the last backup? Does it only look for a different mtime/size etc., or does it actually check for modified content, by verifying some kind of content checksum (MD5 or SHA1)?

Is there some way to change that behavior? I want to make absolutely sure that all changes are included in a backup, even if by accident or malicious intent the modification date of a file is not properly updated; possibly without having to do a full backup every time.

Best Answer

Duplicity is based on librsync.

Rsync's defalt behaviour is to just look at the timestamp. I don't know wether Duplicity overrides this but you can add your own rsync options with the --rsync-options switch.

Add an option like

--rsync-options="--checksum"

to your command and it should always use (the slower) checksumming to determin changed files.

Related Topic