>

用rsync完成windows与linux文件同步的章程www.bifa688

- 编辑:www.bifa688.com -

用rsync完成windows与linux文件同步的章程www.bifa688

windows做为文件服务器,使用rsync的windows服务版本:cwRsyncServer 下载地址:

rsync使用时的常见问题: 

rsync的配置环境
软件平台:windows2003
软件版本:cwRsync_2.0.10_Installer cwRsync_Server_2.0.10_Installer
硬件平台:dell2950 cpu1.6G*4 内存:4G 硬盘:1G*6 RAID5

安装过程要设置用于系统服务的帐号和密码,可以默认。
注:此帐号用于启用crsync server服务,需要分配给帐号对要同步文件的相应权限,否则无法操作被同步的文件。

错误1: 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 服务。开启服务。 或者开启了防火墙指定的端口无法访问。 

===安装===

安装完成后修改配置文件 rsyncd.conf, 配置文件内容如下:

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

在WINDOWS环境下安装rsync要安装服务端和客户端

复制代码 代码如下:

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

服务器端安装:运行cwRsync_Server_2.0.10_Installer
客户端安装:运行cwRsync _2.0.10_Installe

port = 52326
use chroot = false
strict modes = false
#hosts allow = * #允许所有的访问
hosts allow = 192.168.10.2 #指定特定的IP允许访问
log file = rsyncd.log
lock file = rsyncd.lock
max connections = 10
UID = 0
GID = 0
# Module definitions
# Remember cygwin naming conventions : c:work becomes /cygwin/c/work
#
[test]
path = /cygdrive/c/work
read only = false
transfer logging = no

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

安装步骤和安装服务器端是一样的这里就不详细描述

[test2]
path = /cygdrive/d/wwwroot/yanghengfei_com
read only = yes
transfer logging = no
auth users = coldstar #同步使用的帐号
secrets file = rsyncd.secrets #密码文件

错误5:@ERROR: auth failed on module test2 
rsync error: error starting client-server protocol (code 5) at main.c(1296) [receiver=3.0.2] 
解决:服务端没有指定正确的secrets file,请在 [test2]配置段添加如下配置行: 
auth users = coldstar #同步使用的帐号 
secrets file = rsyncd.secrets #密码文件 

===配置===
配置和我们在linux下面的配置一样,在安装目录中找到rsync.conf文件进行配置:

注:
rsyncd.secrets配置文件的格式为 用户名:密码,如:
coldstar:123456

错误6:password file must not be other-accessible 
解决:客户端的pass文件要求权限为600, chmod 600 /etc/rsync.pass 即可。 

Rsync.conf文件:

即添加了一个用户 coldstar,密码为 123456。

错误7:rsync: chdir /cygdrive/c/work failed
: No such file or directory (2)

pid file = /var/run/rsyncd.pid

Linux服务器上执行同步命令:

解决:服务器端同步文件夹路径或名称写错了,检查path。

lock file = /var/run/rsync.lock

rsync -vzrtopg --progress --delete rsync://coldstar@192.168.10.1:52326/test2 /root/test2

===============================================================

log file = /var/log/rsyncd.log

然后在password: 提示符下输入密码即可。

rsyncserver 服务启动时报错“rsyncserver服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报”服务。”

uid = administrator

也可以把密码写入配置文件引用,如:
rsync -vzrtopg --progress --delete --password-file=/etc/rsync.pass rsync://coldstar@192.168.10.1:52326/test2 /www/users/yanghengfei_com

解决方法:将安装目录下的rsyncd.pid文件删除,再重新启动RsyncServer服务。一般是异常关机导致的。

gid = administrator

将以上命令写入计划任务,每1分钟执行,即可实现实时同步的效果。

use chroot = no

注:
上面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间的参数。-- progress是指显示出详细的进度情况,--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。

max connections =4

附,rsync使用时的常见问题:

syslog facility = local5

错误1: 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 服务。开启服务。 或者开启了防火墙指定的端口无法访问。

[test]

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

path =/cygdrive/d/wlk

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

comment=/cygdrive/d/wlk comment = BACKUP CLIENT IS SOLARIS 8 E250
ignore errors # 可以忽略一些无关的IO错误
read only = yes # 只读
list = no # 不允许列文件
auth users = inburst # 认证的用户名,如果没有这行,

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

则表明是匿名
secrets file = etc/inburst.pas # 认证文件名

错误5:@ERROR: auth failed on module test2
rsync error: error starting client-server protocol (code 5) at main.c(1296) [receiver=3.0.2]
解决:服务端没有指定正确的secrets file,请在 [test2]配置段添加如下配置行:
auth users = coldstar #同步使用的帐号
secrets file = rsyncd.secrets #密码文件

在server端生成一个密码文件etc/inburst.pas

错误6:password file must not be other-accessible
解决:客户端的pass文件要求权限为600, chmod 600 /etc/rsync.pass 即可。

打开记事本

您可能感兴趣的文章:

  • Linux下rsync远程数据同步命令的详细介绍
  • linux rsync同步命令(值得收藏)
  • linux rsync的安装与配置
  • Linux 用cp和rsync同步文件时跳过指定目录的方法
  • Linux 服务器同步 Rsync同步服务器文件
  • rsync中文手册之使用rsync实现网站镜像和备份linux
  • cwrsync实现从linux到windows的数据同步备份
  • Linux 命令之rsync命令详解

inburst:hack

保存在安装路径下面的etc文件加下面文件明保存为inburst.pas

在服务中把RsyncServer启动,启动类型修改为自动
这样服务器端就安装设置好了

从client端进行测试
下面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间
的参数。–progress是指显示

出详细的进度情况,–delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。
后面的inburst@ip中,

inburst是指定密码文件中的用户名,之后的::inburst这一inburst是模块名,也就是在/etc/rsyncd.conf中自定义
的名称。最后的/tmp是备份
到本地的目录名。
在这里面,还可以用-e ssh的参数建立起加密的连接。可以用–password-file=/password/path/file来指定密码文
件,这样就可以在脚本中使

用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。

在客户端运行CMD

rsync -av 10.0.0.16::401 /cygdrive/h/401

复制代码 代码如下:

@echo off
rsync -ztruvoglp --progress --delete --password-file=wtjb51.pas /cygdrive/f/webroot/jb51/ wtjb51@221.192.1.1::dddown

wtjb51.pas的内容

复制代码 代码如下:

jb51:www.jb51.net

jb51是用户名,后面的是密码

/cygdrive/f/webroot/jb51/中的f代表的是F盘,其它盘自行修改即可。

rsync使用时的常见问题

错误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 服务,开启服务。

rsyncserver 服务启动时报错“rsyncserver服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报”服务。”

解决方法:将安装目录下的rsyncd.pid文件删除,再重新启动RsyncServer服务。一般是异常关机导致的。

您可能感兴趣的文章:

  • 在Windows中配置Rsync同步文件的方法
  • 用rsync实现windows与linux文件同步的方法
  • cwrsync 四步实现windows备份
  • windows下使用cwRsync定期备份网站(服务器文件同步)
  • cwrsync实现从linux到windows的数据同步备份
  • 使用cwRsync实现windows下服务器文件定时同步备份(附错误处理方法)
  • 用cwrsync同步windows下数据的简单配置方法
  • Windows rsync服务器备份配置实例
  • windows2008系统中rsync计划任务返回0x1问题处理

本文由bifa688.com发布,转载请注明来源:用rsync完成windows与linux文件同步的章程www.bifa688