前段时间写了一篇linux下利用rsync批量更新的文章,网游公司windows服务器还是很多的,今天就来讲讲windows下批量更新的方法,windows下同步数据利用cwRsync来完成的
一、系统环境
windows 2003 R2 sp2
更新源服务器:10.8.5.240
目的服务器:10.8.5.2 10.8.5.3 ... ...
服务端:cwRsyncServer_4.1.0_Installer
客户端:cwRsync_4.1.0_Installer
二、更新源服务器安装配置(rsync服务端)
1、双击cwRsyncServer_4.1.0_Installer.exe然后就一路下一步,安装cwRsync服务端默认有一个管理员账户SvcCWRSYNC,可自行修改
安装完成后,在“服务”里面就可以看到cwRsync对应的服务了,安装完成后需要手动启动该服务
2、修改rsyncd.conf配置文件(C:\Program Files\ICW\rsyncd.conf)
- use chroot = false #不使用chroot
- strict modes = false #静态模式
- hosts allow = * #所有IP均可
- log file = rsyncd.log #log文件名,可以指定路径
- pid file = rsyncd.pid
- port = 8173 #默认端口873
- uid = 0 #不指定uid,不加这一行将无法使用任何账户
- gid = 0 #不指定gid
- max connections = 10 #最大连接数10
-
- # Module definitions
- # Remember cygwin naming conventions : c:work becomes /cygwin/c/work
- [web_1]
- path = /cygdrive/d/www/web_1 #需要备份的路径(D盘www/web_1目录)
- read only = false #只读
- transfer logging = yes #记录传输日志
- ignore errors #忽略无关的IO错误
- list = no #不列文件表
- hosts allow = 10.8.5.0/255.255.255.0 #允许访问的IP
- hosts deny = * #不允许hosts allow以外的任何IP访问
-
-
- [web_2]
- path = /cygdrive/d/www/web_2 #需要备份的路径(D盘www/web_2目录)
- read only = false #只读
- transfer logging = yes #记录传输日志
- ignore errors #忽略无关的IO错误
- list = no #不列文件表
- hosts allow = 10.8.5.0/255.255.255.0 #允许访问的IP
- hosts deny = * #不允许hosts allow以外的任何IP访问
3、配置文件修改完成后,就手动启动RsyncServer服务,netstat -an,看8173端口监听没
三、目的服务器安装配置(rsync客户端)
1、双击cwRsync_4.1.0_Installer.exe,然后一路下一步
2、编写批处理文件定时同步更新
10.8.5.2 (rsync.bat)
- @echo off
- C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_1 /cygdrive/d/www/web_1 >> d:\rsync_%date:~0,10%.log
10.8.5.3 (rsync.bat)
- @echo off
- C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_2 /cygdrive/d/www/web_2 >> d:\rsync_%date:~0,10%.log
或者把C:\”Program Files”\cwRsync\bin\ 加到用户的环境变量中,这样rsync.exe前面就不用加绝对路径了
3、参数说明
-a 参数,相当于-rlptgoD,
-r 是递归
-l 是链接文件,意思是拷贝链接文件;
-p 表示保持文件原有权限;
-t 保持文件原有时间;
-g 保持文件原有用户组;
-o 保持文件原有属主;
-D 相当于块设备文件;
-z 传输时压缩;
-P 传输进度;
-v verbose,详细模式输出;
-u是只同步已经更新的文件,避免没有更新的文件被重复更新一次,不过要注意两者机器时钟的同步;
--progress 显示备份过程;
--delete 删除那些DST中SRC没有的文件,用作同步文件用;
4、设置计划任务
每5分钟同步一次
5、手动测试同步信息
- C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_1 /cygdrive/d/www/web_1
本文转自king_819 51CTO博客,原文链接:http://blog.51cto.com/kerry/753232,如需转载请自行联系原作者