reducing I/O and system load

Matt McCutchen hashproduct at
Sat Mar 4 01:54:38 GMT 2006

On Fri, 2006-03-03 at 16:11 +0800, Denis Solovyov wrote: 
> Not completely sure, but it seems that making huge rsync'ed
> partitions "noatime" (/etc/fstab) slightly helps as well.

That may help by reducing the amount of atime hits while rsync is
scanning for files and reading files.  For reference, traversing a
directory (i.e. that which requires x permission) does not hit its
atime, but listing its entries with readdir does.

For those with a special interest in filesystems:

There are more reasons than efficiency to like noatime!  I firmly
believe that "reading shouldn't write": reading a file should not change
anything on the filesystem.  Plus, atimes are not very useful.  In my
experience with computers, I have often wanted to know when a file was
last modified but never when it was last read.  Atimes have a very
limited use as a way for one person to track when other people have read
his/her files, but they have three limitations in this regard.  They
don't say _who_ read the file (probably more important than when), the
owner of a file can set its atime arbitrarily (utime) or read it without
hitting its atime (O_NOATIME), and they (somewhat incongruously) are
updated only when the filesystem is mounted read-write.

Anyone can disable atime tracking on his/her files by setting the A ext2
attribute with chattr(1); I have done so to my files on all Linux
computers I use.  At a higher level, the sysadmin, in deciding whether
to offer atime tracking to those users who want it, chooses one of two
alternatives: (1) let you track when others read your files or (2) let
you read other files on the system without leaving a trace.  As a user,
I would much rather have ability #2, but maybe that's just me.  Users
that really want to track when others read their files should set up a
fancier system with configurable capabilities backed by setuid.
Matt McCutchen
hashproduct at

More information about the rsync mailing list