2014-06-20
发表者 Venus
windows利用cwRsync实现数据同步已关闭评论
实现软件:
cwRsyncServer_4.1.0 (服务器端)
cwRsync_4.1.0 (客户端)
当时的下载地址找不到了,自行百度搜索找下载地址。
IP地址信息:
服务器端:192.168.0.6 (安装cwRsyncServer)
客户端 :192.168.0.123(安装cwRsync)
目的:
线上windows服务器运行.net网站。测试服务器运行线上项目测试环境。代码发布后,测试机测试,通过后,代码推送到服务器。
服务器端配置:C:\Program Files (x86)\ICW\rsyncd.conf //默认路径
use chroot = false #不使用chroot
strict modes = false #静态模式
hosts allow = * #允许所有IP访问
log file = rsyncd.log #日志名,相对路径
pid file = rsyncd.pid
lock file = rsync.lock
max connections = 1024
port = 873
uid = 0 #不指定uid
gid = 0 #不指定gid
fake super = yes #解决的一个问题,参考https://www.rootop.org/pages/2722.html
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[www] #以下参数不做介绍,跟linux下一样
path = /cygdrive/c/www #将C盘下的www目录同步
read only = false
transfer logging = yes
ignore errors
list = no
hosts allow = 192.168.0.0/255.255.255.0
hosts deny = *
#auth users = rsync #此处屏蔽,采用匿名验证。无需用户名密码。适用于内网环境
#secrets file = rsync.passwd
配置或者修改完参数,去“服务”中重启 RsyncServer 服务生效。
如果有防火墙,记得放行873端口。
客户端配置(充当测试服务器):
直接安装软件即可。
代码测试机通过后,将代码推送到服务器端:
C:\>C:\"Program Files (x86)\cwRsync\bin\rsync.exe" -vzrtopg --delete /cygdrive/f/www/ rsync://192.168.0.6:873/www
参数不做介绍,跟linux下一样。这样就将F盘下的www目录下的代码同步到远程服务器。
这样在windows下实现了代码更新。至于–delete参数,在线上环境最好不要用,因为会将服务器端中客户端没有的数据删除,比如,用户上传的图片。
一定要注意。
rsync操作有风险,使用需谨慎。