1.安装软件
[root@localhost ~]# # yum -y install rsync
rsync服务使用端口为873
2.服务器端配置
2.1 新建rsync服务器的配置文件
[root@localhost ~]# # vi /etc/rsyncd.conf
配置文件选项:
全局设置 secrets file = /etc/rsyncd.secrets \ rsync 同步时密码文件 motd file = /etc/rsyncd.motd \ 欢迎词存放文件 read only = yes \ 只读模式(下载模式),只允许客户端下载,不允许上传,适合一对多的同步方式。如果是多对一的同步,请将这里改成no。 list = yes uid = root \ 可以自行创建备份用户,也可用root,默认是nobody gid = root hosts allow = 192.168.1.130 \ 允许同步的机器,可以是一个网段 hosts deny = 0.0.0.0/0 \ 拒绝同步的机器,这里是只允许上面指定的机器 max connections =2 \ 最大连接数 log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid lock file = /var/run/rsnc.lock [gameserver] \ 定义要同步的目录域 comment = gameserver's directoty form 192.168.1.147 \ 介绍说明 path = /usr/gameserver #secrets file = /etc/rsyncd.secrets \ rsync 同步时密码文件 #motd file = /etc/rsyncd.motd \ 欢迎词存放文件 auth users = rsync \ 允许连接用户,使用逗号分隔多个用户 要定义多个目录可以重复上面的格式
sample:
ecrets file = /etc/rsyncd.secrets
read only = no
write only = no
list = yes
uid = root
gid = root
hosts allow = *
max connections = 10
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsnc.lock
[rsync]
path = /opt/rsync
secrets file = /etc/rsyncd.secrets
auth users = rsync
host allow 设置为 * 允许所有主机访问.
2.2 新建rsync登陆的用户名密码文件
用户名:密码 rsync:123123
2.3 更改文件权限
[root@localhost ~]# # chmod 600 /etc/rsyncd.*
2.4 启动服务
[root@localhost ~]# service xinetd restart (以xinetd守护进程启动)
3. 客户端配置.
3.1 创建客户端密码文件:
[root@localhost ~]# vi /etc/rsyncd.secrets
客户端只需密码无须用户
3.2 更改文件权限
[root@localhost ~]# chmod 600 /etc/rsyncd.*
3.3 与服务器同步
命令解析:
rsync -参数 用户名@同步服务器的IP::rsyncd.conf中那个方括号里的内容 本地存放路径
说明:
-a 参数,相当于-rlptgoD,-r 是递归 -l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
-z 传输时压缩;
-P 传输进度;
-v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;
--delete 同步删除文件
sample:
rsync -vzrtopg --delete --password-file=/etc/rsyncd.secrets rsync@172.16.253.202::rsync /opt/rsync
注意: rsync同步只能为单向同步,服务器端新建,修改文件可以同步到客户端(删除不会).
客户端修改无法反映到服务器端.