rsync+inotify实现文件同步更新(配置)

时间:2022-09-19 00:19:45

linux下为了数据安全或者网站同步镜像,不得不考虑一些实时备份的问题,这篇linux下通过rsync+inotify 实现数据实时备份配置过程记录下来,防止遗忘配置过程记录下来,防止遗忘!如有建议技术支持QQ群555245732 配置架构如下:

rsync+inotify实现文件同步更新(配置)

本文出处参考:http://www.jbxue.com/article/10493.html
一.安装步骤(服务器端192.168.0.5)

1) 安装rsync 点击下载rsync-3.0.9.tar.gz
   下载文件放到该目录下/usr/src
   #cd /usr/src
   #tar -zxvf rsync-3.0.9.tar.gz //解压文件
   #cd rsync-3.0.9 //进入该文件目录
   #./configure //主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
   #make //编译
   #make install //安装

2)安装inotify  点击下载inotify-tools-3.14.tar.gz
   下载文件放到该目录下/usr/src
   #cd /usr/src
   #tar -zxvf inotify-tools-3.14.tar.gz //解压文件
   #cd inotify-tools-3.14 //进入该文件目录
   #./configure //主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
   #make //编译
   #make install //安装

3)服务端编写文件夹监视脚本
  #vi /srv/rsync.sh
  rsync.sh内容如下:
  #!/bin/bash
  src=/srv/test/   #监视改文件路径,文件夹内容发生改变触发服务器数据同步
  des=backup       #客服端配置的模块(客服端会介绍)
  host="192.168.10.6"  #同步到的IP地址,如有多个用空格隔开。例如:host="192.168.10.6 192.168.10.7"
  /usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format
'%T %w%f' -e              modify,delete,create,attrib $src | while read
files #这边要主要下inotifywait,只有Linux 2.6.13 或更高版的才会兼容
  do
  for hostip in $host
  do
  #rsync -vzrtopg --delete --progress rsync@$hostip::$des $src --password-file=/etc/rsync.pas 该命令是客服端跟新后同步到服务器端
  rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pas $src rsync@$hostip::$des #改命令是服务器端跟新后同步到客服端(看具体使用情况选择)
#--password-file=/etc/rsync.pas 配置到客服端,也就是客户端路径下有rsync.pas 用于配置登陆密码
#rsync 是客户端配置的登陆名
  done
  echo "${files} was rsynced" >>/tmp/rsync.log 2>&1  #生成日志文件
  done

4)启动nohup
  #nohup /bin/bash /srv/rsync.sh &  //后台不挂断地运行命令
  #echo "nohup /bin/bash /root/bin/rsync.sh &" >> /etc/rc.local //设置linux服务器启动自动启动nohup

rsync + inofity服务端就配置好了,接下来我们来配置客服端

二.安装步骤(客服端)

1) 安装rsync 步骤如上!
2)配置rsyncd.conf
  #vi /etc/rsyncd.conf //打开rsyncd.conf
  rsyncd.conf内容如下:
  uid = root
  gid = root
  port = 873 #post rsync使用的端口号  也是默认端口号 www.jbxue.com
  hosts allow = 192.168.10.5          #allow hosts ip 应许的ip访问,也可以设置为ip段
  max connections =
  timeout=

##config file
  pid file = /var/run/rsyncd.pid
  lock file = /var/run/rsync.lock
  log file = /var/log/rsyncd.log
  #motd file = /etc/rsyncd.motd

##global config
  [backup]
  path =/srv/test  #客服端已rsync服务端同步的文件路径
  comment = from 192.168.10.5  #解释
  read only = no
  list = no
  ##client sync config
  auth users =rsync  #配置登陆名称
  secrets file = /etc/rsync.passwd  #配置用户名密码文件

3)配置rsync.passwd
  #vi /etc/rsync.passwd
  rsync.passwd内容如下:
  rsync:cyc  #rsync登陆用户名  cyc是登陆密码 
  #chomd 600 rsync.passwd #需要注意rsync.passwd的权限配置 
  客服端配置完成!

三.如果再配置过程中出现如下问题,分析出错原因。

问题一:
 @ERROR: chroot failed
 rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
 服务器端的目录不存在或无权限,创建目录并修正权限可解决问题。

问题二:
 @ERROR: auth failed on module backup
 rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
 服务器端该模块(backup)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。
 提供正确的用户名密码解决此问题。

问题三:
 @ERROR: Unknown module ‘backup'
 rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
 服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题。

rsync+inotify实现文件同步更新(配置)的更多相关文章

  1. Centos7 rsync+inotify实现实时同步更新

    inotify slave部署      把master上指定文件下载到本地的主机指定目录 yum install rsync –y [root@localhost ~]# useradd rsync ...

  2. rsync+inotify实现文件实时同步

    一.相关组件简介 1.rsync 与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器 ...

  3. linux rsync +inotify 实现 实时同步

    前言:     rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rs ...

  4. rsync+inotify实时数据同步多目录实战

    rsync+inotify实时数据同步多目录实战       inotify配置是建立在rsync服务基础上的配置过程 操作系统 主机名 网卡eth0 默认网关 用途 root@58server1 1 ...

  5. rsync+inotify实时数据同步单目录实战

    rsync+inotify实时数据同步单目录实战   rsync+inotify实时数据同步单目录实战 inotify是一个强大的.细粒度的.异步的文件系统事件监控机制,linux内核从2.6.13起 ...

  6. FileSync文件同步更新工具

    FileSync是一款文件同步更新工具,它提供了对一个或多个应用的文件进行管理和同步更并功能,基于MD5的文件对比方式可以使管理者轻易地发布需要更新应用文件.FileSync主要模块包括:服务端,CL ...

  7. centos 配置rsync+inotify数据实时同步2

    一.Rsync服务简介 1. 什么是Rsync 它是一个远程数据同步工具,它在同步文件的同时,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“rsync算法”来使本地和远程两个主机 ...

  8. centos 配置rsync+inotify数据实时同步

    何为rsync? 定义: rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,非常适用于异地备份 何为源端和发起端? 在远程同步过程中,负责发起rs ...

  9. CentOS系统rsync文件同步 安装配置

    rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync 它的特性如下: 可以镜像保存整个目录树和文件系统. 可以很容易做到保持原来文件的权限.时间.软硬 ...

随机推荐

  1. java中的日期操作Calendar和Date

    1. Calendar转Date Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime(); 2. Date ...

  2. linux 添加基于weblogic的nodemanager的服务

    用nodemanager来添加weblogic服务启动. 1.新建一个server,命名为Server1,端口设置为7055,其他采用默认值. 2.新建一个Machine,命名为Machine1.配置 ...

  3. SQL常用命令整理

    1.增加字段 alter table docdsp     add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME DROP COLUMNcolum ...

  4. ubuntu15.04安装Chrome浏览器

    首先到: https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb 下载最新的安装文件. 然后: sudo a ...

  5. Eclipse CDT 代码高亮配置

    效果图如下: 配置生效方式: 找到CDT的workspace目录中如下文件 X:\workspace\.metadata\.plugins\org.eclipse.core.runtime\.sett ...

  6. Apache Struts ClassLoader操作漏洞

    漏洞版本: Apache Struts 2.x 漏洞描述: CVE ID:CVE-2014-0094 Struts2 是第二代基于Model-View-Controller (MVC)模型的java企 ...

  7. How to hide TabPage from TabControl

    No, this doesn't exist. You have to remove the tab and re-add it when you want it. Or use a differen ...

  8. virtual private catalog

    The following databases are registered in the base recovery catalog: PROD1, PROD2, and PROD3.The dat ...

  9. .Net程序员学用Oracle系列(8):触发器、任务、序列、连接

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.触发器 1.1.创建触发器 1.2.禁用触发器 & 启用触发器 & 删除触发器 2.任务 2.1.DBMS_ ...

  10. timeit模块 与 time模块,计时的区别

    time  模块,理解容易 import time time_start = time.time() time_end = time.time() time_use = time_end - time ...