最终目标 redhat服务器安装rsync服务端,windows客户端自动同步redhat服务器/data/backup目录中的数据到E:\data\backup目录下。 服务器环境 linux服务器 操作系统版本: [root@redhat /]# lsb_release -a
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release: 5.5
Codename: Tikanga IP地址:192.168.1.4 备份目录:/data/backup windows服务器 操作系统版本: file:///C:/DOCUME~1/boqi/LOCALS~1/Temp/msohtml1/01/clip_image001.jpg IP地址:192.168.1.103 备份目录: E:\data\backup 安装配置服务器 redhat服务器 创建用户backup,密码 123456 useradd backup
passwd backup 创建rsync服务端文件 mkdir /etc/rsyncd
cd /etc/rsyncd
touch rsyncd.conf rsyncd.secrets
chmod 600 rsyncd.secrets
touch rsyncd.motd vim rsyncd.conf
- #进程写入文件
- pid file = /var/run/rsyncd.pid
- #运行端口
- port = 873
- #指定服务器IP地址
- address = 192.168.1.4
- uid = root
- gid = root
- #限定在当前目录,不准访问非指定目录的文件
- use chroot = yes
- #不允许客户端上传文件到服务端
- #no:可上传文件;yes:只读模式
- read only = no
- #no:可以下载文件;yes:不能下载文件
- write only = no
- #允许访问的客户端IP
- hosts allow=192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0
- hosts deny=*
- #客户端最大连接数
- max connections = 5
- #客户端访问欢迎信息文件
- motd file = /etc/rsyncd/rsyncd.motd
- #rsync服务器日志文件
- log file = /var/log/rsync.log
- #记录传输文件的日志
- transfer logging = yes
- log format = %t %a %m %f %b
- syslog facility = local3
- timeout = 300
-
- [databackup]
- path = /data/backup
- #列出目录
- list=yes
- #忽略IO错误
- ignore errors
- #认证用户
- auth users = backup
- #密码储存文件位置
- secrets file = /etc/rsyncd/rsyncd.secrets
- #注释内容
- comment = redhat data backup
- #同步时忽略目录
- exclude = .svn/ cache/ log/
vim rsyncd.secrets vim rsyncd.motd 以服务模式启动rsync /usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf 检查下服务运行状态 [root@redhat rsyncd]# netstat -tnlap | grep 873
tcp 0 0 192.168.1.4:873 0.0.0.0:* LISTEN 3156/rsync 别忘记开启iptables的873端口。 windows服务器 双击安装,然后全部点击下一步即可安装好。 最好把C:\Program Files\cwRsync\bin加入环境变量,这样随时随地都可以敲命令,方便好多。 测试一下是否能连接上redhat服务器 telnet 192.168.1.4 873 file:///C:/DOCUME~1/boqi/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg 同步一下看看 file:///C:/DOCUME~1/boqi/LOCALS~1/Temp/msohtml1/01/clip_image003.jpg 参数说明:
e/data/backup:代表e:\data\backup目录,个人理解cygdrive是个虚拟的驱动器,如果在rsync的参数里直接写e:\之类的参数会报错,所以换种写法;
databackup:具体见/etc/rsyncd/rsyncd.conf中的[databackup]行。 现在的同步还需要输入密码,我们在C:\Program Files\cwRsync\bin目录下新建密码文件password.txt并加入密码123456。
在C:\Program Files\cwRsync\bin目录下创建批处理文件databack.bat并输入如下内容:
- @echo off
- echo.
- echo 开始同步数据,请稍等...
- echo.
- cd C:\Program Files\cwRsync\bin
- rsync -vzrtopg --port=873 --progress --delete backup@192.168.1.4::databackup /cygdrive/e/data/backup < password.txt
- echo.
- echo 数据同步完成
- echo.
现在直接执行databack.bat看看,自动完成数据同步。如果想让windows服务器定时执行数据同步任务,把批处理文件加入计划任务即可。
|