linux,windows文件同步

   刚上班不久,刚熟悉公司的一个项目,源程序在服务器上,我把源程序下下来在windows客户端vs2010上编辑,每次编辑完如果要运行都要先和服务器的源程序比较一下,保存新修改的文件到服务器上,每次都觉得好麻烦。突然想起做一下文件同步的问题,如何把windows和linux的文件进行同步处理?

   经过一番查找,选择cwRsyn 进行文件同步。下载地址:cwRsyn下载。 

   cwRsync是Windows平台的文件同步解决方案,cwRsync打包了rsync和cygwin,rsync是Linux平台的文件同步软件,cygwin是一个在Windows平台上运行的Linux模拟环境。

   1. cwRsync服务端安装与配置


1) 下载并安装cwRsyncServer,下载地址:http://sourceforge.net/projects/sereds/files/。(上面下载的cwRsyn有)


安装过程中,会出现创建用户的窗口,输入用户名与密码后,安装软件会自动创建一个Windows帐户。该帐户用于运行RsyncServer的Windows服务(要注意该帐户对要同步的文件夹是否具有权限),当然你也可以用系统帐户来运行服务。安装完成后,在管理工具》服务中会出现RsyncServer服务。(这里我显示登录失败,我是点击该服务的属性,然后点击登录,选择登录身份为本机用户。)


2) 修改配置文件rsyncd.conf,配置文件如下:(主要做的修改有a项和c项,c项选择windows上要同步的文件夹地址,把f/test改成你对应的即可)


use chroot = falsestrict modes = falsehosts allow = *log file = rsyncd.loguid = 0gid = 0[test]path = /cygdrive/f/testread only = falsetransfer logging = yes配置文件说明:


a) uid = 0,gid = 0是针对匿名访问的情况进行设置的,这样客户端同步时就不需要进行用户验证。如果不进行这样的设置,客户端同步时会出现“invalid uid nobody”或“invalid gid nobody”的错误提示。如果需要用户验证,就要进行另外的设置。


b) [test]相当于虚拟目录,客户端同步时,就是通过这个名字访问服务器上要同步的文件夹。


c) path = /cygdrive/f/test,同步文件夹的实际路径,f/test=f:\test。


3) 进入管理工具》服务,启动RsynServer服务。


注:


a) cwRsyncServer默认端口是873,如果要指定端口,在rsyncd.conf中添加:port = 端口号。


b) 修改了rsyncd.conf,重启RsynServer服务之后才会生效。


2. 客户端使用方法(由于linux自带rsync,不需要安装,直接输入命令使用即可。rsync -av rsync://192.168.0.58:873/test  /cygdrive/h/sync/test,将ip地址修改刚才windows端地址,端口默认为873,然后修改/cygdrive/h/sync/test为客户端要同步的地址(我的是linux,地址为/home/chengg/src))


1) 下载并安装cwRsyn客户端,下载地址:http://sourceforge.net/projects/sereds/files/。


2)通过命令行进行同步操作:


假设cwRsync服务器的IP是192.168.0.58,使用默认端口873,要同步的虚拟目录是test,客户端进行同步的文件夹是h:\sync\test,则运行如下的命令进行同步:


rsync -av rsync://192.168.0.58:873/test  /cygdrive/h/sync/test
注:如果服务器端删除文件,客户端同步时不会在客户端删除文件,只同步增加和更新的文件。


3) 创建同步批处理文件并加入任务计划。(每次同步时需要输入上述命令,如果不想这么麻烦,第一定时执行上述命令,crontab命令,我也不太懂。第二就是把上述命令设置成一个别名(alias命令),每次同步时输入别名就可以--)。看你的需求而言需不要定时批处理了,目前来说我只需要在编译上述源程序的时候才需要用,所以我自己来说设置一个别名update,感觉也还可以。


     好了,这篇文章大概到这里了。上述文献很大部分引用于cwRsyn下载的使用说明.txt,感谢这个工具。能帮助人们节省时间就是好工具。

     加油努力吧~

猜你喜欢

转载自blog.csdn.net/wolf_break/article/details/34108189