Windows Server 2012 两台服务器文件同步

Posted 一如年少de模样

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows Server 2012 两台服务器文件同步相关的知识,希望对你有一定的参考价值。

下载cwRsyncServer软件安装(这是Windows下的文件同步软件)

一、(1)在文件客户端服务器安装该软件,找到安装位置下的rsyncd.conf,修改配置文件(注意在Windows下输入位置时格式是:/cygdrive/c/ztb表示C盘下的ztb目录)

use chroot = false

strict modes = false

hosts allow =*

log file = rsyncd.log

pid file = rsyncd.pid

port = 873

uid = 0

gid = 0

max connections = 10

lock file = rsyncd.lock

 

[backup]

path = /cygdrive/c/ztb/

transfer logging = yes

ignore errors

list = no

secrets file =/cygdrive/c/Rsync/rsyncd.secrets

hosts allow = 192.168.0.2/255.255.255.0

hosts deny = *

(2)建立rsyncd.secrets

直接输入: 

123456

 

二、在备份文件的服务器(数据库服务器)安装该软件,新建密码文件rsyncd.secrets,输入格式为:

Administrator:123456

三、在备份文件服务器手动同步测试(建议先手动测试,如果出错可以直接看出来)

在命令行界面(cmd)进入软件安装目录C:\\Program Files (x86)\\ICW\\bin;输入命令

rsync.exe -avzPu--progress --delete rsync://192.168.0.2:873/backup /cygdrive/c/Appbackup--password-file=/cygdrive/c/Rsync/rsyncd.secrets

四、自动同步测试

备份文件服务器(数据库服务器)新建文件同步脚本rsync.cmd,内容如下:

@echo off

set rsynclog="C:\\Rsync\\rsync.log"

set nowtime=te:~0,10% %time%

echo %nowtime% >> %rsynclog%

cd /d

C:\\Program Files (x86)\\ICW\\bin

rsync.exe  -avzPu  --progress  --delete  rsync://192.168.0.2:873/backup/cygdrive/c/Appbackup  --password-file=/cygdrive/c/Rsync/rsyncd.secrets

>> %rsynclog%

@echo -------------------------------------------------- >>%rsynclog%

@echo. >> %rsynclog%

五、加入系统任务计划

点击任务计划程序,进入右键点击【创建任务】

创建定时任务和数据库差不多,可以参看另一篇博文

https://www.cnblogs.com/marshu/p/9842697.html

六、遇到问题及解决办法本步骤参考了https://www.cnblogs.com/janas/p/3321087.html

 

错误1: rsync: read error: Connection reset by peer (104) 
rsync error: error in rsync protocol data stream (code 12) at io.c(794) [receive r=3.0.2] 
解决:很大可能是服务器端没有开启 rsync 服务。开启服务。

  

错误2:@ERROR: chdir failed 
rsync error: error starting client-server protocol (code 5) at main.c(1495) [receiver=3.0.2] 
解决:服务器端同步目录没有权限,cwrsync默认用户是Svcwrsync。为同步目录添加用户Svcwrsync权限。

 

错误3:@ERROR: failed to open lock file 
rsync error: error starting client-server protocol (code 5) at main.c(1495) [receiver=3.0.2] 
解决:配置文件 rsync.conf中添加 lock file = rsyncd.lock 即可解决。

 

错误4: rsync: could not open password file "/cygwin/e/Setting/Rsync/rsync_db.pwd": No such file or directory (2)
解决:密码文件的目录一定要存在,而且要用POSIX风格的写法:/cygdrive/e/Setting/Rsync/rsync_db.pwd

 

错误5:@ERROR: auth failed on module data_backup rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
解决:密码错误,输入正确的密码即可。用户名和密码如果都正确,可能是远程rsync服务器的帐户密码文件的权限必须为600。

  

错误6: password file must not be other-accessible
解决:这是因为rsyncd.pwd rsyncd.sec的权限不对,应该设置为600。如:chmod 600 rsyncd.pwd, Windows下应将密码文件的所有者改成程序运行的用户。

  

错误7:@ERROR: invalid uid nobody . rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
解决:在rsyncd.conf文件中添加下面两行即可
uid = 0
gid = 0 

 

问题8: @ERROR: chroot failed
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:服务器端的目录不存在或无权限。创建目录并修正权限可解决问题。

  

问题9:@ERROR: Unknown module ‘tee_nonexists’
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题。

  

问题10:rsync: failed to connect to 218.107.243.2: No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]
原因:对方没开机、防火墙阻挡、通过的网络上有防火墙阻挡,都有可能。关闭防火墙,其实就是把tcp udp的873或者指定的rsync端口打开。

 

问题11:rsync error: error starting client-server protocol (code 5) at main.c(1524) [Receiver=3.0.7]
原因:/etc/rsyncd.conf配置文件内容有错误。请正确核对配置文件。

  

问题12:rsync: chown "" failed: Invalid argument (22)
原因:权限无法复制。去掉同步权限的参数即可。(这种情况多见于Linux向Windows的时候)

   

问题13:@ERROR: daemon security issue -- contact admin
rsync error: error starting client-server protocol (code 5) at main.c(1530) [sender=3.0.6]
原因:同步的目录里面有软连接文件,需要服务器端的/etc/rsyncd.conf打开use chroot = yes。掠过软连接文件。

  

问题14:rsync: read error: Connection reset by peer (104)
rsync error: error in rsync protocol data stream (code 12) at io.c(794) [receiver=3.0.2]
解决:很大可能是服务器端没有开启 rsync 服务,开启服务。

  

                                                                                         有梦可以跑回去,那自然是幸运!

以上是关于Windows Server 2012 两台服务器文件同步的主要内容,如果未能解决你的问题,请参考以下文章

Windows Server 2012R2 实现AD双域控制器互为冗余

Windows Server 2012 R2 时间同步

Windows Server 2012如何实现双网卡绑定

Windows?Server2016下安装SQL?Server2012集群

Windows Server 2012 administrators组共享权限的问题

如何破解windows server 2008r2远程连接数2个的限制