资源描述
Windows 下如何配置cwRsync(文件同步)
像网络上所有的文章一样,我们的第一步就是准备两台电脑:
一台作为Server,一台作为Client
本次的实例是:
Server cwRsync:192.168.1.98
Client cwRsync:192.168.1.99
首先要下载cwRsync的服务端和客户端软件,下载地址如下:
服务端:cwRsync_Server_2.0.10_Installer
客户端:cwRsync_2.0.10_Installer
1、 服务器的安装与配置
a、 安装cwRsync_Server_2.0.10_Installer.exe软件;
b、在开始程序中打开“start a unix bash shell”程序:
进入一个类似cmd的终端,输入如下命令:
$/bin/activate-user.sh
输入l(表示local,就是本地用户)
输入administrator(或者你登录到该计算机的用户名)
后面全按Enter键结束;
c、启动opensshd
打开“控制面板”-->“管理工具”-->“服务”:
找到一个opensshd的服务,启动它;
d.配置rsyncd.conf配置文件
编辑D:\Program Files\cwRsyncServer\rsyncd.conf,(在安装该软件目录下)内容如下:
#全局配置
use chroot = false #不使用chroot
strict modes = false #不使用静态模式
hosts allow = * #允许所有的IP
secrets file=password #密码文件存放位置
log file = rsyncd.log #日志文件存放位置
pid file = rsyncd.pid #进程文件存放位置
#port = 52326 #自定义端口
max connections = 4 #允许最大的连接数是4台
uid = 0
gid = 0
#secrets file = rsyncd.secrets
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[rsync] #自定义模块名称
path = /cygdrive/e/test #此处路径代表d:\test目录,此可为自定义
ignore errors #及时出现IO错误也进行删除
read only = yes #设置为文件属性为只读
transfer logging = yes
list = no #不允许列文件
auth users = chaorjwei #用户名称
secrets file = /etc/inburst.ps #允许用户的密码文件存放位置
#lock file = rsyncd.lock
e.启动rsync服务:
打开“控制面板”-->“管理工具”-->“服务”:
找到一个RsyncServer的服务,启动它
到此server端配置结束,接下来配置client端 。
2、 客户端安装于配置:
a、安装client端软件包:cwRsync_2.0.10_Installer.exe;
b、打开cmd,执行如下操作,测试服务端是否正常 启动服务了:
cd C:\Program Files\cwRsync\bin (到安装客户端软件的安装目录下的bin文件夹下)
telnet 192.168.1.99 22
telnet 192.168.1.99 873
若上述测试成功,此时可执行同步计划:
Rsync -vzrtopg --progress --delete --password-file=/cygdrive/e/test/inburst.ps
xiaofan@192.168.1.99::rsync /cygdrive/d/test
下面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间 的参数。--progress是指显示出详细的进度情况,--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。
后面的xiaofan@192.168.1.99中,
xiaofan是指定密码文件中的用户名,之后的::rsync这一rsync是模块名,也就是在/etc/rsyncd.conf中自定义 的名称。最后的/tmp是备份 到本地的目录名。
在这里面,还可以用-e ssh的参数建立起加密的连接。可以用--password-file=/password/path/file来指定密码文 件,这样就可以在脚本中使 用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
此处的 /cygdrive/e/inburst.ps 是客户端的e盘下的inburst.ps文件,该文件内容是xiaofan这个用户的密码,只存密码; /cygdrive/d/test是客户端的d盘下的test文件夹,用来保存服务器端同步过来的文件。 (若密码文件打不开,会提示输入密码,用户名为xiaofan,密码则为123456的登录密码)
至此,安装配置windows到windows间的同步已经OK
如果定时同步server上的文件,可将其加入任务计划中。
如果上面的所有步骤都成功的话,那么恭喜你,你这个同步计划已经成功完成了一半,接下来我将要告诉你另外一半是如何来实现。
3、 同步计划的实现
前面我们说到了,cwRsync的服务器和客户端的安装与配置,接下来就是要当道计算机中按照计划执行了。
我们可以用写一个bat文件,将其放入任务计划中,但是这里有一点要说,那就是你的bat最好放在客户端的bin目录下面,因为同步的命令就是调用客户端bin目录下的rsync.exe,只是如果你放在别的地方的话,就是在bat文件下,多加一条命令罢了。
下面介绍一下如何通过windows中的“任务计划”来创建定时任务,执行定时同步。
首先在客户端的机器上的: 控件面板->任务计划->点击“添加任务计划”, 在相应的弹出窗口中点击下一步,然后点击导航窗口中的“浏览”按钮,如下,并从中选择之前创建的批处理文件”samersyns.bat”:
点击浏览:
选中你所写的bat文件,我这里是samersync.bat
这个是按照个人的需求要定,像我就需要它实时进行同步。
自定义程序运行时间,我这里是从凌晨开始就是执行的。
然后写上本地登录的用户名和密码就行啦。
这是日程安排的高级选项。我让他每分钟都要执行一次,实现真正的同步计划。
这是最后的效果,从凌晨开始,每隔一分钟就执行一次,为时24小时。
到这里,这个计划任务就会每天24小时,以每分钟运行一次的方式来同步之前的那两个文件夹了。
呵呵,这完全是本人最近广泛浏览网络资源,所总结出来的经验,信不信由你,反正我是成功了。如有在配置过程中遇到问题的网友,可发到本人邮箱进行咨询。
邮箱账号:xianfanshini@。
展开阅读全文