这取决于导致这种高处理器利用率的原因.如果高处理器利用率是由生成文件校验和的Rsync引起的,那么您可以执行一些操作.
您可能根本不需要校验和.默认情况下,rsync根据修改时间和文件大小决定文件是否不同.如果添加“-c”选项,它将通过比较校验和来确定文件是否不同.如果您不需要校验和,请省略该选项.
如果确实需要校验和,则在某些情况下校验和缓存可能有效.如果要同步的文件不经常更改,则可以在cron作业中每天生成一次校验和,rsync将使用生成的校验和. Rsync仍将为任何新文件或与创建校验和时具有不同修改时间或大小的任何文件生成校验和.
此信息基于rsync 3.0.5,但在3.0.6中应该相同.
你需要重新编译rsync;校验和缓存是一个补丁.这是我用来编译rsync的内容:
rsync_version="3.0.5"
scriptroot="Set this to your working directory."
mkdir -p $scriptroot/rsync-source/rsync-working
cd $scriptroot/rsync-source/rsync-working
tar xvzf ../rsync-${rsync_version}.tar.gz
tar xvzf ../rsync-patches-${rsync_version}.tar.gz
cd $scriptroot/rsync-source/rsync-working/rsync-${rsync_version}
patch -p1 < patches/checksum-reading.diff
./configure
make
然后使用rsyncsums生成校验和.调用rsync时,请使用“–sumfiles = lax”选项.