rsync实时同步

  <强>与传统的cp、tar备份方式相比,rsync具有安全性高,备份迅速,支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等。   

   rsync实时同步”>
  <br/> 192.168.0.1源服务器有目录/opt/测试/</p>
  期间目<p> 192.168.0.2标服务器有目录/opt/贝克/测试/</p>
  <p>实现的目的就是保持这两个服务器某个文件目录保持实时同步</p>
  <p>实现方式:通过rsync + inotify-tools结合来实现</p>
  
  <强>准备工作:</强>
  <p>首先要给两台机器添加信任关系,具体方法已经在前面的文章介绍过了</p>
  <p>详情查看:
  linux添加信任关系免密码登录</p>
  <p>需要安装软件:</p>
  
  <强> 1。rsync同步软件</强>
  <p>在源服务器和目标服务器都需要安装</p>
  <p>源服务器:是rsync客户端,不需要配置</p>
  <p>目标服务器:是rsync服务器端,需要配置/etc/rsyncd.conf里的内容</p>
  
  <强> 2。inotify-tools工具</强>
  <p>该工具为文件实时监控工具,需要linux操作系统内核支持,内核支持需要至少版本为2.6.13 </p>
  <p>检查操作系统是否支持,执行如下:</p>
  <p> uname - r查看版本
  <br/>返回:
  <br/> 2.6.32-358.6.1.el6.x86_64
  <br/>则表示版本2.6.32大于2.6.13,则支持。</p>
  </p> <p>执行:
  <>之前,,,,ll /proc/sys/fs/inotify
  ,,,total  0,
  ,,,-rw-r——r, 1, root  root  0, Oct  18, 12:18  max_queued_events 
  ,,,-rw-r——r, 1, root  root  0, Oct  18, 12:18  max_user_instances 
  ,,,-rw-r——r, 1, root  root  0, Oct  18, 12:18  max_user_watches </pre>
  <p>有三项输出,则表示默认支持inotify,可以安装inotify-tools工具。</p>
  <p>如果不支持,需要采用新版本的linux操作系统</p>
  <p>版本达到要求,就可以安装了。</p>
  <p>安装inotify-tools后会在相关安装目录下生成如下两个文件:</p>
  <>以前ll /usr/地方/bin/,,,total  88年,
  ,,,-rwxr-xr-x  1, root  root  44327, Oct  10, 15:32  inotifywait 
  ,,,-rwxr-xr-x  1, root  root  41417, Oct  10, 15:32  inotifywatch </pre>
  <p>则表示安装成功。</p>
  <p>注意:在源服务器上需要安装,目标服务器上不需要安装inotify。</p>
  
  <强> 3。相关
  脚本:</强>
  <p>在源服务器上新建
  脚本:</p>
  </p> <p> inotify_bak.sh
  <>之前,,,,# !/bin/bash 
  ,,,src=https://www.yisu.com/opt/test//usr/local/bin/inotifywait -mrq——timefmt ' % d/y % m/% % H: % m '——格式' % f % % T % w e - e close_write,删除,创建、attrib src |美元,阅读文件
  做/usr/bin/rsync -arzuq src 192.168.0.1:美元:www/echo /opt/软/日志/rsync。日志2> & 1   之前完成   

赋予执行权限:chmod + x inotify_bak.sh

  

然后执行:nohup inotify_bak。上海,放入后台执行

     <强> 4。关于启动   

目标服务器:先启动rsync后台服务:/usr/bin/rsync——守护进程

  

来源服务器:执行inotify_bak。sh,

     <强> 5。测试:   

在来源服务器目录中新建目录和文件,inotify_bak.sh脚本会检测到,然后同步到目标服务器的相关目录下

  

可以查看日志文件:/opt/软/日志/rsync.log    命令如下:观察实时同步的情况。

  <>之前,,,,tail  -f ,/opt/软/日志/rsync.log   错误解决:/usr/local/bin/inotifywait: error  while  loading  shared 库:,libinotifytools.so.0:, cannot  open  shared  object 文件:,No  such  file 或是目录   

这是因为找不到库文件的原因,做一个软连接就好了

  <>以前ln  -s /usr/地方/lib/libinotifytools.so.0 /usr/lib64/libinotifytools.so.0   
  

原文来自      https://www.linuxprobe.com/rsync-scp.html

rsync实时同步