目标
将Windows服务器上某个目录的数据完全同步到Linux服务器。Windows作为服务端,开启873端口,Linux 作为客户端,从远端向Windows 服务器拉取数据。
Windows部署cwRsyncServer
1、下载cwRsyncServer4.1,进行安装,在安装时可以自定义用户名密码,但必须确保密码的复杂度,否则系统无法成功创建用户和服务。
2、安装完毕后,进入对应目录配置conf文件,默认的安装路径在C:\Program Files (x86)\ICW,修改此目录下的rsyncd.conf文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
use chroot =
false
strict modes =
false
hosts allow = *
log
file
= rsyncd.log
port = 873
uid = 0
gid = 0
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[rsyncdata]
# 同步模块,可设置多个
path =
/cygdrive/d/rsyncdata
#此处表示D:/rsyncdata 目录
read
only =
false
transfer logging =
yes
hosts allow = 192.168.1.231
#此处为Linux服务器地址
auth
users
=
rsync
secrets
file
=
/cygdrive/d/rsyncd
.secrets
#密码文件路劲
|
3、创建同步文件夹和密码文件:
在D盘创建rsyncd.secrets文件,确认后缀名为secrets而不是txt,并添加账号密码内容:
rsync:rsync
创建或者选择需要同步数据的文件夹,并为文件夹添加SvcCWRSYNC的用户权限(full contronal)。
4、启动服务:
在run命令框中输入 services.msc ,进入服务管理界面,设置RsyncServer服务自启动
5、配置Windows防火墙,在入栈规则中添加允许访问873端口。
Linux服务器同步文件
1、在Linux服务器上安装rsync:
1
|
yum
install
rsync
-y
|
2、配置密码文件:
1
2
|
echo
"rsync"
>
/etc/rsyncd
.secrets
chmod
600
/etc/rsyncd
.secrets
|
3、创建/rsyncdata/data目录使用如下命令同步文件:
1
2
|
rsync
-vazrtopqg --delete --password-
file
=
/etc/rsyncd
.secrets \
rsync
@192.168.1.171::rsyncdata
/rsyncdata/data/
|
4、可将上面的命令添加到定时任务脚本,每天凌晨2点执行一次:
1
|
0 2 * * *
/bin/bash
/scripts/rsyncbak/bak
.sh &>
/dev/null
|
本文转自 酥心糖 51CTO博客,原文链接:http://blog.51cto.com/tryingstuff/1962831