1 安装xinetd
 yum -y install xinetd
2 将rsync启动控制交给xinetd
 vi /etc/xinetd.d/rsync
 将disable = yes  更改为  disable = no
3 创建rsync配置文件
vi /etc/rsyncd.conf 添加
uid = root
gid = nobody
use chroot = yes
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[upload]
path = /data/upload
comment = used for user upload data
read only = no
list = no
hosts allow = 192.168.1.252
[download]
path = /data/download
comment = used for user download file
read only = yes
list = no
hosts allow = 192.168.1.252
[password]
path=/data/password
comment = need password to access
read only = yes
list = no
auth users = wang
secrets file =/data/rsyncd.pass
4创建密码文件
 touch /data/rsyncd.pass
 echo "wang:test">/data/rsyncd.pass
 chmod 400 /data/rsyncd.pass

5重新启动xinetd 让rsync配置生效
 service xinetd restart
6 在192.168.1.252测试
在192.168.1.252 上传同步文件夹命令
rsync -a --progress --delete  /data/upload     192.168.1.100::upload
在192.168.1.252 下载同步文件夹命令
rsync -a --progress --delete 192.168.1.100::download download/
在192.168.1.252上同步需要密码验证的文件夹命令
touch pass
echo "test">pass
chmod 400 pass
rsync -a --progress wang@192.168.1.100::password /data/passwd --password-file=pass
7 说明:
1 rsync常用参数说明示例:
[test]                 # 这里是认证的模块名,在client端需要指定
max connections = 4    #客户端最大连接数,默认0(没限制)
uid = root             #指定该模块传输文件时守护进程应该具有的uid
gid = nobody           #指定该模块传输文件时守护进程应该具有的gid
path = /data/upload   # 需要发布的数据文件目录
read only = no         #no客户端可上传文件,yes只读
write only = no        #no客户端可下载文件,yes不能下载
hosts allow = 192.168.0.101     #*允许任何主机连接
#hosts deny = 192.168.1.100    #禁止指定的主机连接
auth users = root     #认证的用户名,如果没有这行,则表明是匿名
secrets file = /data/rsyncd.pass   # 指定认证口令文件位置
#exclude = *                                 #排除所有文件
#include = test.txt                          #包含test.txt文件
2上述rsync配置实现了
upload模块允许192.168.1.252 上传
download模块允许192.168.1.252 下载
password模块允许用户wang通过密码验证,如果想让多个账号通过密码验证,多个账号之间用逗号隔开。服务器端secret file的格式为 账号:密码 一行一个账号  客户端的secret file 中只需要填入密码即可.

3 参数说明:
-a 参数设置复制文件及目录,并保持访问权限、修改时间等文件的元数据(metadata);
--delete  参数让目标同源保持完全一致,在源目录被删除的文件,在目标目录也会被删除。如果不包含“--delete”选项,那么即使在源目录已经删除的文件,也会仍然保存在

目标目录中。
--progress  参数将显示复制详细的进度。
-a, --archive                   归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive                 对子目录以递归模式处理
-l, --links                         保留软链结
-p, --perms                    保持文件权限
-o, --owner                    保持文件属主信息
-g, --group                     保持文件属组信息
-D, --devices                 保持设备文件信息
-t, --times                      保持文件时间信息
-e, --rsh=COMMAND              指定使用rsh、ssh方式进行数据同步
--delete                         删除那些DST中SRC没有的文件
-z, --compress                对备份的文件在传输时进行压缩处理
--password-file=FILE          从FILE中得到密码
-zrtopg                      有些朋友喜欢用这些参数同步

4 如果想把rsync做成独立模式可以用下面的命令启动rsync,而不再用xinetd 也不必执行上面第1、2 、4步
/usr/bin/rsync --daemon  --config=/etc/rsyncd.conf