rsync是linux下一款用于同步文件的优秀软件,window下也可以使用它,不过名字为cwRsync。本文主要介绍的是使用window作为rsync的服务端,linux为客户端的使用方法。
cwRsync也分为客户端很服务端,
服务端:cwRsync_Server_2.0.10_Installer
window是作为服务端,所以下载名为cwRsyncServer_4.0.5_Installer.zip的文件。 下载后解压安装,按照向导一步一步下去即可,安装最后需要输入一个系统账号和密码,这个账号是用于运行cwRsync服务的,必须有管理员权限。
安装完成后,在安装的根目录下有一个名为rsyncd.conf文件,即是配置文件。修改后的内容如下:
use chroot = false strict modes = false hosts allow = * log file = rsyncd.log # 如果没有uid,gid 的设置linux客户端会提示 # invalid uid nobody 错误 uid = 0 gid = 0 # 指定tcp 端口,默认是873 # port = 1122 # 定义模块,可以定义多个 [test] # 模块对应系统目录,需要使用/cygdrive + 盘符 path = /cygdrive/c/work # 用于认证模块的用户名 auth users = testuser # 存放认证密码文件,存放于etc下的testuser.pas中 # 文件名可以随便取,内容为用户名:密码,例如“testuser:123” secrets file = etc/testuser.pas read only = false transfer logging = yes
启动服务:运行 — services.msc,在打开的“服务”管理器中找到RsyncServer并启动,也可以使用在命令行的方式来启动和关闭。
启动服务 net start RsyncServer 停止服务 net stop RsyncServer
在linux下使用如下命名即可进行同步了
同步linux下文件夹到window中, rsync -vzrtp --progress --delete --password-file=/xxx/rsyncd.secrets /home/linuxdir/ rsync://testuser@10.211.55.3:/test/ 同步window下文件夹到linux中 rsync -vzrtp --progress --delete --password-file=/xxx/rsyncd.secrets rsync://testuser@10.211.55.3:/test/ /home/linuxdir/
注意需要在用户名前使用“rsync://”,否则会提示“connect to host xxx port 22: Connection refused”;密码文件的内容只有密码,不需要用户名,且文件的owner为root,权限为600;如果使用非默认端口需要在ip的冒号后指定端 口;端口后是服务配置中定义的模块名字。
当出现rsync: chown “” failed: Invalid argument (22)错误时,是因为参数中有o,即保留文件的owner信息,而window服务端无法完成chown操作,解决办法是去掉参数o。另外有些可能还会 出现rsync: chgrp “” failed: Invalid argument (22),原因类似,只要去掉参数中的g即可。
相关资源链接:
http://blog.csdn.net/gguxxing008/article/details/7018924
http://bbs.ywlm.net/thread-915-1-1.html
欢迎转载,转载请注明文章出处,谢谢!