rsync algorithm

hce webmail.hce at
Wed Jul 21 23:47:20 MDT 2010

On Thu, Jul 22, 2010 at 2:43 PM, hce <webmail.hce at> wrote:
> On Wed, Jul 21, 2010 at 10:35 PM,  <radius13a at> wrote:
>> How many of the files are changing?
> Not many.
>> If the file size and times haven't change then rsync won't be comparing things and calculating checksums.  When rsync sees that a file has changed then it compares checksums of the chunks to reduce the amount of data transferred over the network.

> So the rsync actually check file size and mtime first, if the size and
> mtime matches in both sides, the file is identical without further
> compares the checksums and chunks.
> Check file size makes sense, but how rsync checks times? If a file is
> copied from one side to another remote side, the time will be
> different, right?

Sorry wrong question, the copy file should be able to reserve the mtime.

Ok, if the size and mtime are different, rsync will check the
checksums and chunks. If the chunk checksum is different, I guess the
rsync will only send diff parts, not the whole chunk or whole file, is
it correct?

>> On Jul 20, 2010, at 7:38 PM, hce wrote:
>>> Hi,
>>> I am learning rsync mechanism. My understanding is that rsync reads a
>>> file into multiple chunks and calculates every byte for MD5 and
>>> rolling checksum for each chunk.. On the other side of file system, it
>>> compares two checksums for each chunk in the same file to decide if
>>> two files are equal or not. Is it correct? If it is correct, should I
>>> worry the calculation time if I have thousands large files each
>>> contains 10 MB? Please correct me.
>>> Thank you.
>>> Kind regards,
>>> hce
>>> --
>>> Please use reply-all for most replies to avoid omitting the mailing list.
>>> To unsubscribe or change options:
>>> Before posting, read:

More information about the rsync mailing list