rsync 在本地目录和本地目录之间进行同步


一.安装rsync
yum install rsync xinetd(centos7不需要安装xinetd)

二.启动rsync
centos6:service xinetd restart
centos7:systemctl start rsyncd

三.执行同步
1.参数说明
参数说明
--------------------------------------------------------------------
-a 相当于 -rlptgoD 的集合
-u 等同于 --update,在目标文件比源文件新的情况下不更新
-v 显示同步的文件
--progress 显示文件同步时的百分比进度、传输速率
--delete 删除目标目录中多于源目录的文件
--exclude 排除不需要的文件,文件用双引号
-o, --owner 保留所有者
-p,--perms 保持原来的权限
--chown=USER:GROUP 简单的用户/组名映射
--log-file 日志文件,例如:
--log-file=/root/rsync_log/rsync_`date -d "now" +%Y-%m-%d`.log
-z 传输文件时进行压缩传输
-R 使用相对路径信息
--------------------------------------------------------------------
2.命令实例及说明

a) rsync -av --progress src-dir/ dst-dir 注意 "/"
同步src-dir目录下所有文件到dst-dir目录下

b) rsync -av --progress src-dir dst-dir
同步src-dir整个目录到dst-dir目录下(会在dst-dir下创建src-dir目录)

c) rsync -avu --progress --delete src-dir/ dst-dir 注意 "/"
对src-dir目录内容向dst-dir目录下进行差异更新,有增加/更新则添加替换,有减少则对其删减

d) rsync -av --progress --temp-dir=/tmp src-dir/ dst-dir 注意 "/"
比a)多了--temp-dir=/tmp,即指定/tmp为临时交换区,这样可以避免因目标目录空间不够引起的无法同步文件的错误。