CentOS6快速搭建rsync

  • A+
所属分类:服务搭建

rsync是一款非常优秀的数据镜像备份工具,可以提供快速稳定的数据远程备份、增量备份,适用于网站镜像以及其他实时性备份需求。

 试验环境

实验平台:VMware虚拟机

操作系统:CentOS 6.5

服务端IP:192.168.168.200

客户端IP:192.168.168.201

 服务端篇

第一步 准备工作

禁用SElinux

  1. [root@Wanghualang-A ~]# setenforce 0  
  2. [root@Wanghualang-A ~]# sed -ri 's#^(SELINUX=).*#\1disabled#g' /etc/selinux/config  

禁用防火墙

  1. [root@Wanghualang-A ~]# service iptables stop  
  2. [root@Wanghualang-A ~]# service ip6tables stop  
  3. [root@Wanghualang-A ~]# chkconfig iptables off        
  4. [root@Wanghualang-A ~]# chkconfig ip6tables off  

第二步 安装软件

  1. [root@Wanghualang-A ~]# yum -y install rsync  

第三步 新建同步目录

创建一个rsync目录,随意拷贝一些文件到这个目录里作为同步测试用,再创建一个SexInSex目录,用于测试同步例外目录。

  1. [root@Wanghualang-A ~]# mkdir -p /data/rsync  
  2. [root@Wanghualang-A ~]# mkdir /data/rsync/SexInSex  
  3. [root@Wanghualang-A ~]# cp -rf /etc/init.d/* /data/rsync/  

第四步 配置服务

配置文件需要手动创建,参数比较灵活,按需设置即可。

  1. [root@Wanghualang-A ~]# vim /etc/rsyncd.conf  

  1. motd file = /etc/rsyncd.motd  
  2. transfer logging = yes  
  3. log file = /var/log/rsync.log  
  4. pid file = /var/run/rsync.pid  
  5. lock file = /var/run/rsync.lock  
  6. port = 873  
  7. address = 192.168.168.200  
  8. uid = nobody  
  9. gid = nobody  
  10. user chroot = yes  
  11. read only = yes  
  12. max connections = 10  
  13. [my]  
  14. comment = Wanghualang Rsync  
  15. path = /data/rsync  
  16. ignore error  
  17. exclude = SexInSex/  
  18. auth users = wanghualang  
  19. secrets file = /etc/rsyncd.secrets  
  20. host allow = 192.168.168.201  
  21. host deny = *  
  22. list = true  

扩展阅读展开


配置参数说明

  1. #服务器信息提示文件名称,在该文件中编写提示信息  
  2. motd file = /etc/rsync.motd  
  3. #Rsync数据传输日志功能  
  4. transfer logging = yes  
  5. #日志文件名称,可以通过log format 参数设置日志格式  
  6. log file = /var/log/rsync.log  
  7. #Rsync进程号保存文件名称  
  8. pid file = /var/run/rsync.pid  
  9. #锁文件名称  
  10. lock file = /var/run/rsync.lock  
  11. #设置服务器监听端口号,默认873  
  12. port = 873  
  13. #监听IP地址  
  14. address = 192.168.168.200  
  15. #数据传输时所使用的用户名或ID号,默认使用nobody  
  16. uid = nobody  
  17. #数据传输时所使用的用户组或GID号,默认使用nobody  
  18. gid = nobody  
  19. #映射根目录  
  20. user chroot = yes  
  21. #客户端上传数据,默认设置只读  
  22. read only = yes  
  23. #并发连接数,0代表无限制  
  24. max connections = 10  
  25. #同步模块名称  
  26. [my]  
  27. #模块注释说明  
  28. comment = Wanghualang Rsync  
  29. #同步目录  
  30. path = /data/rsync  
  31. #忽略IO错误  
  32. ignore error  
  33. #指定例外目录  
  34. exclude = SexInSex/  
  35. #允许连接服务器帐户,可以是系统中不存在的用户  
  36. auth users = wanghualang  
  37. #密码验证文件名称  
  38. secrets file = /etc/rsyncd.secrets  
  39. #允许哪些主机可以同步数据,可以是单个IP,也可以是网段,多个IP与网段之间使用空格分隔  
  40. host allow = 192.168.168.201  
  41. #拒绝访问,除hosts allow定义的主机外  
  42. host deny = *  
  43. #客户端请求显示模块列表时,本模块名称是否显示,默认为true  
  44. list = true  


创建密码文件,用于客户端同步时进行密码验证,密码文件权限必须设置600。

  1. [root@Wanghualang-A ~]# echo "wanghualang:123456" >> /etc/rsyncd.secrets  
  2. [root@Wanghualang-A ~]# chmod 600 /etc/rsyncd.secrets  

创建信息提示文件,也就是同步时能看到的登陆欢迎信息。

  1. [root@Wanghualang-A ~]# echo "Welcome To My Blog:http://www.wanghualang.com" >> /etc/rsyncd.motd  

第四步 启动服务

启动rsync服务,并设置开机启动。

  1. [root@Wanghualang-A ~]# rsync --daemon --config=/etc/rsyncd.conf  
  2. [root@Wanghualang-A ~]# echo "/usr/bin/rsync --daemon --config=/etc/rsyncd.conf" >> /etc/rc.local  

 客户端篇

第一步 准备工作

禁用SElinux

  1. [root@wanghualang-B ~]# sed -ri 's#^(SELINUX=).*#\1disabled#g' /etc/selinux/config  

禁用防火墙

  1. [root@wanghualang-B ~]# chkconfig iptables off      
  2. [root@wanghualang-B ~]# chkconfig ip6tables off  

重启系统

  1. [root@wanghualang-B ~]# reboot  

第二步 安装软件

  1. [root@Wanghualang-B ~]# yum -y install rsync  

第三步 新建同步目录

  1. [root@Wanghualang-B ~]# mkdir -p /data/rsync  

第四步 同步数据

rsync命令参数十分丰富,接下来开始将A机上的/data/rsync下的全部数据(SexInSex文件夹除外),同步至B机上的/data/rsync,最终实现整个同步工作自动完成,免手动输入密码。

创建客户端密码文件,这个和rsync服务端密码文件不同,只需要密码就行,不需要用户名,密码文件权限也是600。

  1. [root@Wanghualang-B ~]# echo "123456" >> /etc/rsyncd.pass  
  2. [root@Wanghualang-B ~]# chmod 600 /etc/rsyncd.pass  

全部设置完毕后,就可以开始同步数据了,关于该命令的更多用法自行研究。

  1. [root@Wanghualang-B ~]# rsync -avz --password-file=/etc/rsyncd.pass wanghualang@192.168.168.200::my /data/rsync  

同步结束后,检查一下B机上的/data/rsync目录,看看内容是否和A机一样(SexInSex文件夹除外)。

  1. [root@Wanghualang-B ~]# ls /data/rsync/  

第五步 计划同步

可以按需求进行计划同步,比如每30分钟同步一次;

  1. [root@Wanghualang-B ~]# crontab -e  

加入以下内容:

  1. */30 * * * * rsync -avz --password-file=/etc/rsyncd.pass wanghualang@192.168.168.200::my /data/rsync  
  • 微信赞助网站
  • weinxin
  • 支付宝赞助网站
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: