实验环境
服务端:Linux Centos 6.8 (10.208.131.198)
客户端:windows 2008 (10.208.131.199)
服务端
一、安装rsync服务 设置开机自启动
# yum install xinetd rsync -y # chkconfig xinetd on# chkconfig rsync on
二、设置rsync以服务方式运行
# vim /etc/xinetd.d/rsyncservice rsync{ disable = no //(默认为YES) flags = IPv6 socket_type = stream wait = no user = root server = /usr/bin/rsync server_args = --daemon log_on_failure += USERID}
三、启动rsync服务 查看端口是否开启
# service xinetd start# netstat -tanp |grep 873tcp 0 0 :::873 :::* LISTEN 1593/xinetd
四、配置rsyncd.conf (需要手工创建)
# vim /etc/rsyncd.confuid = root //运行RSYNC守护进程的用户gid = root //运行RSYNC守护进程的组use chroot = no //切换到Path所制定的目录下 默认为Truepid file = /var/run/rsyncd.pid //pid文件的存放位置lock file = /var/run/rsync.lock //锁文件的存放位置log file = /var/log/rsyncd.log //日志文件的存放位置max connections = 3 //最大客户端连接数3stirict modes = yes //是否检查口令的权限port = 873 //rsync默认端口[testshare] //认证的模块名 在客户端需要指定path = /share/ //参与同步的目录ignore errors //可以忽略一些无关的IO错误read only = no //允许可读可写list = no //不允许列出清单hosts allow = 10.208.131.1.199 //允许同步的主机 拒绝其他一切auth users = admin //认证的用户名secrets file =/etc/rsyncd.pass //密码文件存放地址
五、创建数据同步的目录
# mkdir /share
六、创建用户名和密码给予权限 并重启rsync服务
# vim /etc/rsyncd.passAdmin:123456 //格式为 user:passwd 为一行# chmod 600 /etc/rsyncd.pass# chown root.root /etc/rsyncd.pass# service xinetd restart
客户端
一、Windows主机客户端安装与配置
下载地址 (5.5版本) 绿色版
5.5版本直接解压 在cmd命令行下切换到bin下可以用
5.5的版本需要自己添加一个账户
4.0.5有服务端和客户端版本
4.0.5客户端版本没有chmod和chown这两个命令需要从服务端拷贝
5.5服务端是收费的
5.5的客户端是有chmod和chown程序的
服务器和客户端账户和密码必须为一致 创建账号admin 密码123456
创建同步密码 不需要账户只需要密码
新建一个文本文档 将密码写入后改名为rsyncd.pass
密码文件在哪都可以同步的时候指定密码文件位置就好了
给密码文件权限进行设置
C:\Users\Administrator>D:D:\>cd /ICW/Bin/D:\ICW\Bin>chmod.exe -c 600 /cygdrive/d/ICW/rsyncd.passmode of `/cygdrive/d/ICW/rsyncd.pass' changed to 0600 (rw-------)D:\ICW\Bin>chown.exe administrator /cygdrive/d/ICW/rsyncd.pass
环境变量设置
计算机属性 --> 高级系统设置 --> 环境变量 --> 系统变量 --> Path --> 末尾添加D:\ICW\Bin;
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;D:\ICW\Bin;
关掉cmd命令行重新打开输入rsync回车 会出来rsync的帮助信息 已经生效
测试是否可以同步
在Linux同步的目录里创建文件 并在Windows上E盘创建share目录
C:\Users\Administrator>rsync -vzrtopg --progress admin@10.208.131.198::testshare /cygdrive/e/share --password-file=/cygdrive/d/ICW/rsyncd.pass-v 详细模式输出-z, --compress //对备份的文件在传输时进行压缩处理。-r, --recursive //对子目录以递归模式处理。-t, --times //保持文件时间信息。-o, --owner //保持文件属主信息。-p, --perms //保持文件权限。-g, --group //保持文件属组信息。--delete //删除目标中源文件没有的文件或目录--progress //显示备份过程。/cygdrive/e/share E盘下的share /cygdrive/必须加的--password-file=rsyncd.pass //从rsyncd.pass得到密码
计划任务
由于设置了环境变量 直接将上边的命令写到文本文档 改名为.bat或者.cmd文件 放到任务计划里就可以了
测试结果