1. cwRsync简介
cwRsync是Rsync在Windows上的实现版本,Rsync通过使用特定算法的文件传输技术,可以在网络上传输只修改了的文件。
cwRsync主要用于Windows上的远程文件同步备份和同步,它包含Cygwin DLL和适用Cygwin版本的Rsync两部分。
cwRsync分为Server和Client,本文使用的版本为4.1.0,下载地址如下:
cwRsyncServer v4.1.0:http://pan.baidu.com/s/1eQpaIVwcwRsync
http://pan.baidu.com/s/1eQpaIVwcwRsync v4.1.0:http://pan.baidu.com/s/1pJ3B1FX
下面举例介绍Server及Client端的配置使用,本文使用环境如下:
Server: 192.168.85.236
Client: 192.168.85.249
2. Server安装使用
2.1 安装
一路点击Next,使用默认配置安装即可。
2.2 配置
修改配置文件rsyncd.conf如下(默认位置:C:\Program Files\ICW\):
use chroot = false strict modes = false hosts allow = * log file = rsyncd.log pid file = rsyncd.pid port = 873 uid = 0 gid = 0 # Module definitions # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work # [test] path = /cygdrive/d/test read only = false transfer logging = yes
部分重要参数解释如下:
use chroot = false strict modes = false hosts allow = * #允许所有IP访问 log file = rsyncd.log #日志文件 pid file = rsyncd.pid #进程文件 port = 873 #服务端口号 uid = 0 #不限定用户 gid = 0 #不限定组 # Module definitions # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work # [test] #认证的模块名,在client端需要指定使用 path = /cygdrive/d/test #需要做镜像同步的目录,如d:/test read only = false transfer logging = yes
注:
1. uid=0和gid=0需要指定,否则后面client进行同步时会报错:
@ERROR: invalid uid nobody
rsync error: error starting client-server protocol (code 5) at main.c(1516) [Receiver=3.0.8]
2. 上述只是简单的配置示例,还有很多其他的选项,可以参考帮助文件:C:\Program Files\ICW\doc\rsyncd.conf.html
2.3 启动服务
在Server机器上运行services.msc,选择服务"RsyncServer"配置启动类型为"自动",后启动该服务。
3. Client安装使用
3.1 安装
与Server相同,一路点击Next,使用默认配置安装即可。
3.2 使用
新建一个test.bat文件,内容如下:
@echo off set RSYNC_HOME=C:\Program Files\cwRsync\bin cd %RSYNC_HOME% C: rsync -avzP --progress --delete rsync://192.168.85.236:873/test /cygdrive/d/test
命令参数详解:
-avzP -a 参数,相当于-rlptgoD: -r 是递归 -l 是链接文件,意思是拷贝链接文件 -p 表示保持文件原有权限 -t 保持文件原有时间 -g 保持文件原有用户组 -o 保持文件原有属主 -D 相当于块设备文件 -v 详细模式输出 -z 传输时压缩 -P 显示传输进度 --progress 显示备份同步过程 --delete 删除Client中有Server没有的文件,即如果Server删除了这一文件,那么client也相应把文件删除,保持真正的一致 rsync://192.168.85.236:873/test 配置Sever的IP地址及需要同步的模块名(Server rsyncd.conf中配置) /cygdrive/d/test 存放同步文件的Client本地目录D:\test
运行bat,Client会进行文件远程同步
3.3 测试
在上述环境上,进行了大批量文件的同步测试,结果如下:
1.每次进行同步时,client均会获取更新文件列表,文件数目比较大时(2.7w 27.5G)耗时较长(5min47s)
2.在此基础上进行增量更新耗时较短,更新100个文件(减去获取列表时间)只需耗时16s
以上来自:https://www.cnblogs.com/l1pe1/p/4901031.html
---------------------------------------分割符-----------------------------------------------------------
介绍:
客户端:
aaa.bat是添加的运行脚本,
mima.txt是密码文件,与服务端设置的密码一样,
服务端:
a.txt是设置的用户名密码,path是window下的对应文件夹当前是d盘下的e文件夹
服务端需要安装 。