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