使用rsync在windows和linux两个系统中进行文件同步

linux服务端安装及配置:

为了简便起见,直接使用yum install rsync 或 apt-get install rsync安装,实际上windows也有rsync的服务端程序,这里就不讨论了,这里假设服务端是在Linux的,如果客户端不是要windows,其操作命令也是类似的。

 

安装好 rsyns 后,在 /etc 目录新建rsyncd.conf

(这个文件实际上你在哪个目录创建都是可以的)

 

vi /etc/rsyn_cd.conf

pid file = /var/run/rsyncd.pid
uid = nobody
gid = nobody
max connections = 36000
log file = /var/log/rsync.log
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
syslog facility = local5

[备份项名称]
path = /要同步的目录
comment = 备份项名称
list = no
read only = false
use chroot = no
hosts allow = *
hosts deny = *
auth users = root
secrets file = /etc/rsync_root.pas

 

后面两行是用户密码的配置,不过考虑到同步行为通常是在特定的服务器进行的,实际上通过防火墙直接限制IP会更安全些,速度也快些

如果需要认证的,建立一个密码文件 /etc/rsync_root.pas

 

vi /etc/rsync_root.pas

root:密码

 

配置完毕后启动rsync

rsync --daemon --config /etc/rsyn_cd.conf

 

 

windows客户端配置:

 

先下载 cwrsync 这软件并进行安装

假设安装目录是 C:/Program Files/cwRsyncServer/bin 为了简便起见,先把这路径设为环境变量Path

 

新建批处理文件:

 

文件同步.bat

 

@ECHO OFF
rsync -vzrtopg --progress --delete /cygdrive/e/下载到目录 root@服务端IP::备份项名称

 

这里需注意的是 /cygdrive/e 就是表示 windows的E盘,不能直接写成 E:/ 否则会出错

 

--delete这个参数需小心用,它是标示同步后两边文件一致的(如果服务端删除了某文件,备份目录也会删除这个文件),如果考虑服务端可能误删除数据,则不需要加此选项,否则就达不到备份的目的

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(服务器运维技术,LAMP技术,windows,linux,文件同步,file,logging,path)