一.Server端


CentOS 6下安装
yum -y install xinetd

1.配置:
vi /etc/xinetd.d/rsync

service rsync
{
    disable = yes
    socket_type = stream
    wait = no
    user = root
    server = /usr/bin/rsync
    server_args = --daemon
    log_on_failure += USERID
}
将disable = yes改成disable = no
然后重启xinetd
# service xinetd restart

2.配置rsyncd.conf
#vi /etc/rsyncd.conf

全局参数
uid = root                                  //运行RSYNC守护进程的用户
gid = root                                  //运行RSYNC守护进程的组
use chroot = no                 //不使用chroot
max connections = 4             // 最大连接数为4
strict modes =yes                //是否检查口令文件的权限
port = 873                      //默认端口873
          
模块参数
[backup]                   //这里是认证的模块名,在client端需要指定
path = /home/backup/        //需要做镜像的目录,不可缺少!
comment = This is a test       //这个模块的注释信息
ignore errors                //可以忽略一些无关的IO错误
read only = yes              // 只读
list = no                   //不允许列文件
auth users = hening             //认证的用户名,如果没有这行则表明是匿名,此用户与系统无关
secrets file = /etc/rsync.pas           //密码和用户名对比表,密码文件自己生成
hosts allow = 192.168.1.1,10.10.10.10      //允许主机
hosts deny = 0.0.0.0/0                   //禁止主机
#transfer logging = yes

#exclude是排除的意思,也就是说,要把/home目录下的easylife和samba排除在外; easylife/和samba/目录之间有空格分开
exclude = easylife/  samba/ 

3.配置密码文件
#vi /etc/rsync.pas
该文件位置和上面的配置的路径文件名一致
ant5:123456
保存退出

为安全起见做如下设置:
设置该文件为root所有
#chown root.root /etc/rsync.pas
设置文件权限为600
#chmod 600 /etc/rsync.pas

4.启动服务
rsync --daemon

二.客户端
1.安装
# yum -y install rsync

2.创建密码文件
# vi /etc/rsyn.pas

123456

3.给予只读权限
chmod 600 /etc/rsyn.pas


三.测试
1.从客户端写入文件到服务端:
/usr/bin/rsync -vzrtopg --progress --password-file=/etc/rsync.pas  /backup/ ant5@192.168.1.105::backup

2.从服务端读取文件到客户端:
/usr/bin/rsync -vzrtopg --progress --delete ant5@192.168.1.105::backup /backup/ --password-file=/etc/rsync.pas

*请注意如果路径结束后面带有"/",表示备份该目录下所有文件,但不会创建该目录,如不带"/"则创建该目录。