狮子的雄心,骆驼的耐力,孩子的执著!
分类: LINUX
2011-09-28 16:15:15
rsync什么情况下会同步文件呢?
这里假设A机同步到B机上,并且rsync同步参数为:vazu,这个参数对做网站镜像的来说完全可以的了。
对这组参数的解释如下:
-v, –verbose 详细模式输出
-a, –archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, –recursive 对子目录以递归模式处理
-l, –links 保留软链结
-p, –perms 保持文件权限
-t, –times 保持文件时间信息
-g, –group 保持文件属组信息
-o, –owner 保持文件属主信息
-D, –devices 保持设备文件信息
-z, –compress 对备份的文件在传输时进行压缩处理
-u, –update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
下面对以下几种不同步情况进行测试:
1,如果A机文件时间比B机文件时间新,则A会同步文件到B。
2,如果A杋文件时间比B机文件时间旧,则A不同步文件到B。
3,如果B机文件属主,属组不同于A机,并且A机文件时间不比B机文件时间旧,则会更新B机文件的属主,属组,但不重新同步文件。
4,如果B机文件属主,属组不同于A机,并且A机文件时间比B机文件时间旧,则不会更新B机文件的属主,属组,也不重新同步文件。
5,如果B机文件权限不同于A机,并且A机文件时间不比B机文件时间旧,则会更新B机文件的权限,但不重新同步文件。
6,如果B机文件权限不同于A机,并且A机文件时间比B机文件时间旧,则不会更新B机文件的权限,也不重新同步文件。
7,即使A机与B机文件内容(大小)不一样,如果B机文件比A机文件新,也不会同步。
综上可以看出,以vazu这组参数运行rsync时,是以时间为最优先,只有更新的文件才同步文件;如果只是属主属组,权限的不同,
则不重新同步文件,而是仅更新这些属性,前提是A机的时间不比B机的时间旧。