在Linux 上进行文件同步的时候我们一般会根据需要选择rsync之类的同步工具,cwRsync是一款适用于Windows平台的rsync同步工具,它最大的特点是和Linux上的Rsync有着相同的配置,而且可以使用rsync命令来实现不同主机文件的同步工作。
这篇博客记录了使用cwRsync将Windows服务器上的文件同步到Linux。
Windows安装cwRsyncServer
这里使用的是4.1的版本:
下载完成之后,解压文件,进行安装。这里将Windows 服务器作为server 端,安装cwRsyncServer, 安装完成之后修改配置文件rsyncd.conf(默认位置:C:\Program Files\ICW\)
配置文件信息:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<code>use chroot = </code><code>false</code>
<code>strict modes = </code><code>false</code>
<code>hosts allow = * </code><code># * 表示允许所有主机访问,为了安全起见,可以设置主机IP</code>
<code>log </code><code>file</code> <code>= rsyncd.log</code>
<code>port = 873</code>
<code>uid = 0 </code>
<code>gid = 0</code>
<code># Module definitions</code>
<code># Remember cygwin naming conventions : c:\work becomes /cygwin/c/work</code>
<code>#</code>
<code>[svndata] </code><code># 指定认证的模块,与rsync配置相同 </code>
<code>path = </code><code>/cygdrive/h/svn</code> <code># 指定需要同步的文件目录,这里表示H:/svn目录,需要加上/cygdrive</code>
<code>read</code> <code>only = </code><code>false</code>
<code>transfer logging = no</code>
<code>hosts allow = 192.168.1.204 </code><code># 只允许192.168.1.204 连接,同步的另一台主机</code>
<code>auth </code><code>users</code> <code>= </code><code>rsync</code> <code># 授权用户</code>
<code>secrets </code><code>file</code> <code>= </code><code>/cygdrive/h/rsyncd</code><code>.secrets </code><code>#密码文件路径</code>
在H盘的根目录创建rsyncd.secrets文件,并填写如下账号密码信息:
<code>rsync</code><code>:</code><code>rsync</code>
在Server机器上运行services.msc,选择服务"RsyncServer"配置启动类型为"自动",后启动该服务。
Linux服务器配置rsync
在Linux 服务器上配置rsync客户端。
<code>yum </code><code>install</code> <code>rsync</code> <code>-y</code>
<code>echo</code> <code>"rsync"</code> <code>> </code><code>/etc/rsyncd</code><code>.secrets</code>
<code>chmod</code> <code>600 </code><code>/etc/rsyncd</code><code>.secrets</code>
编写脚本文件,同步Windows上的文件到本地:
<code>#!/bin/bash</code>
<code>#backup 192.168.1.205 svn file to loalhost.</code>
<code>rsync</code> <code>-vazrtopqg --delete --password-</code><code>file</code><code>=</code><code>/etc/rsyncd</code><code>.secrets </code><code>rsync</code><code>@192.168.1.205::svndata </code><code>/SVN-BAK/</code>
写入本机定时任务:
<code>0 2 * * * </code><code>/bin/bash</code> <code>/scripts/svn-bak</code><code>.sh &> </code><code>/dev/null</code>
本文转自 酥心糖 51CTO博客,原文链接:http://blog.51cto.com/tryingstuff/1978070