Ubuntu Rsync服务端与Windows cwRsync客户端实现数据同步 博客分类: rsync
windows端:
1、crsync的安装配置
默认安装到D:\Program Files,
rsyncd.conf的配置:
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log
uid=0
gid=0
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
[backup]
path = /cygdrive/d/phpStudy/WWW/yitiji/server
read only = false
transfer logging = yes
测试rsync是否通讯成功:
开始-运行-cmd -– telnet 200.200.200.103 873 出现:
说明安装成功
2、打开D:\Program Files\ICW\bin,新建passwd.txt, 输入123456
继续在D:\Program Files\ICW\bin,新建MySqlbackup.bat, 输入:
#@echo off
echo.
echo 开始同步数据,请稍等...
echo.
d:
cd "D:\Program Files\ICW\bin"
rsync.exe -vzrtopg --exclude-from="D:\Program Files\ICW\bin\excludelist.txt" --progress --delete backup@200.200.200.103::backup /cygdrive/d/phpStudy/WWW/yitiji/server < "D:\Program Files\ICW\bin\passwd.txt"
echo.
echo 数据同步完成
echo.
pause
3、添加批处理脚本到windows任务计划:控制面板 — 管理工具 — 任务计划程序 —创建任务,触发器设置为 晚上18:30(时间看情况调整,考虑到服务器IO跟网络环境建议 叉开时间)
Linux端:
默认Ubuntu安装了rsync服务,但在/etc下没有配置文件,一般情况copy到/etc下
cp /usr/share/doc/rsync/examples/rsyncd.conf /etc
vi /etc/rsyncd.conf
log file = /var/log/rsyncd.log #日志文件位置,启动rsync后自动产生这个文件,无需提前创建。
[backup] #自定义名称
path = /home/soft/rsync #Rsync服务端数据目录路径
comment = backup #模块名称与[backup]自定义名称相同
uid = nobody #设置rsync运行权限为root
gid = nogroup #设置rsync运行权限为root
port=873 #默认端口
read only = no #设置为no,cwRsync客户端可上传文件,yes只读
write only = no #设置为no,cwRsync客户端可下载文件,yes不能下载
auth users = mysqlback #执行数据同步的用户名,可以设置多个,用英文状态下逗号隔开
secrets file = /etc/rsync.pass #用户认证配置文件,里面保存用户名称和密码,后面会创建这个文件
hosts allow = 200.200.200.250 #允许进行数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开
hosts deny = 192.168.21.254 #禁止数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开
list = yes #显示Rsync服务端资源列表
2、cat /etc/rsyncd.pass
backup:123456
chmod 600 /etc/rsyncd.conf #设置文件所有者读取、写入权限
chmod 600 /etc/rsync.pass #设置文件所有者读取、写入权限
启动rsync: rsync --daemon --config=/etc/rsyncd.conf