【Windows】Windows服务器之间实现文件实时同步?

Windows服务器之间实现文件实时同步?

做公安项目,要实现内外网文件同步,需要用到同步工具。有一个工具叫 “前置机”。
前置机的原理不是很清楚,应该是通过地址映射过去,然后跟公安内网某个内网IP服务器一一映射。
前置机有以下几个特点:
1、能从外往里访问,在里面不能访问外面(应该是服务器被屏蔽了,可能是公安部规定的“一机多用”)
2、桥梁作用,外网 ===》前置机 ===》内网
3、文件、数据只能主动请求拉取,而不能主动往外发送。

文件同步工具(cwRsync)

分为cwRsyncServer和cwRsyncClienthttps://pan.baidu.com/s/1FbV6nbSUfj3DbLoh9fFr5w 密码:ntln

安装服务器版cwRsyncServer

一直下一步:
直到完成安装
打开服务 =》 找到RsyncServer服务 =》设置成自动启动 =》启动
如果报错,可能是用户名密码不正确,去系统用户更改密码,再次填入启动。

配置服务器环境:
安装目录应该在 C:\Program Files\ICW
找到 rsyncd.conf文件,配置如下:

use chroot = false
strict modes = false
log file = rsyncd.log
pid file = rsyncd.pid
port = 888
uid = 0
gid = 0

# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[work]
path = /cygdrive/e/sync
read only = false
transfer logging = yes
hosts allow = *
hosts deny = 0.0.0.0/0

[n2w]
path = /cygdrive/e/sync_n2w
read only = false
transfer logging = yes
hosts allow = *
hosts deny = 0.0.0.0/0


重启RsyncServer服务。

使用telnet 127.0.0.1 888测试一下是否通。

安装客户端版cwRsyncClient

客户端一直下一步安装,安装目录:
使用命令同步:
新建一个bat文件,写入:

@echo off
set RSYNC_HOME=C:\Program Files\cwRsync\bin
cd %RSYNC_HOME%
C:
rsync -vzrtopg --progress --delete /cygdrive/d/wwwroot/work/ rsync://192.168.2.21:888/work 
ping -n 5 127.0.0.1>nul
rsync -vzrtopg --progress --delete rsync://192.168.2.21:888/work /cygdrive/d/wwwroot/work
ping -n 10 127.0.0.1>nul
rsync -vzrtopg --progress --delete rsync://192.168.2.21:888/n2w /cygdrive/d/sync_n2w

命令不同,作用也不同。
1、#rsync -vzrtopg --progress --delete /cygdrive/d/wwwroot/work/ rsync://192.168.2.21:888/work
根据目录结构,是将客户端的文件上传到服务器端
2、rsync -vzrtopg --progress --delete rsync://192.168.2.21:888/work /cygdrive/d/wwwroot/work
这里是将服务器端的文件拉取到客户端,且如果服务器端没有这个文件,则删除客户端想对应的文件

你可能感兴趣的:(服务器)