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

本文出处参考: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实现文件同步更新(配置)的更多相关文章
- Centos7 rsync+inotify实现实时同步更新
inotify slave部署 把master上指定文件下载到本地的主机指定目录 yum install rsync –y [root@localhost ~]# useradd rsync ...
- rsync+inotify实现文件实时同步
一.相关组件简介 1.rsync 与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器 ...
- linux rsync +inotify 实现 实时同步
前言: rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rs ...
- rsync+inotify实时数据同步多目录实战
rsync+inotify实时数据同步多目录实战 inotify配置是建立在rsync服务基础上的配置过程 操作系统 主机名 网卡eth0 默认网关 用途 root@58server1 1 ...
- rsync+inotify实时数据同步单目录实战
rsync+inotify实时数据同步单目录实战 rsync+inotify实时数据同步单目录实战 inotify是一个强大的.细粒度的.异步的文件系统事件监控机制,linux内核从2.6.13起 ...
- FileSync文件同步更新工具
FileSync是一款文件同步更新工具,它提供了对一个或多个应用的文件进行管理和同步更并功能,基于MD5的文件对比方式可以使管理者轻易地发布需要更新应用文件.FileSync主要模块包括:服务端,CL ...
- centos 配置rsync+inotify数据实时同步2
一.Rsync服务简介 1. 什么是Rsync 它是一个远程数据同步工具,它在同步文件的同时,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“rsync算法”来使本地和远程两个主机 ...
- centos 配置rsync+inotify数据实时同步
何为rsync? 定义: rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,非常适用于异地备份 何为源端和发起端? 在远程同步过程中,负责发起rs ...
- CentOS系统rsync文件同步 安装配置
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync 它的特性如下: 可以镜像保存整个目录树和文件系统. 可以很容易做到保持原来文件的权限.时间.软硬 ...
随机推荐
- ReactJS的开发日常
在用React框架开发的日子里,踩的坑真不少!今天就来说说这个关于组件的周期,说的可能不是很清楚,但是也给自己留下一个踩坑的纪念,如有不妥 还望大家指点一二 Warning: setState(... ...
- 2013~2014年度 NOIP~GDOI总结
滚回去撸一年中考撸完之后就迎来了NOIP2013(话说初赛差点被坑了有木有= =)想想当年10月还是那样的天真的去了广州,结果就被虐成翔的回来了= =只做了三道签到题的渣渣就是弱= =DAY1T2死活 ...
- WebApi实现通讯加密
一. 场景介绍: 如题如何有效的,最少量的现有代码侵入从而实现客户端与服务器之间的数据交换加密呢? 二. 探究: 1.需求分析 webapi服务端 有如下接口: public class ApiTes ...
- OpenCv 2.4.9 (二) 核心函数
前言 经过前面一节的怎样读取图片,我们可以做一些有趣的图像变换,下面我们首先介绍使用遍历的方法实现,然后我们使用内置的函数实现. 矩阵掩码实现 矩阵掩码,和卷积神经网络中的卷积类似.一个例子如下: 现 ...
- JavaScript中定义变量和存储值的类型判断
以严谨的语法表示作为前提 首先变量被定义,然后给变量赋予一定的值,变量真正的作用就是存储值 变量的定义和赋值 变量的定义: var a 使用关键字var+变量名表示定义一个变量 a 变量的赋值: va ...
- windows container (docker) 容器资料笔记
背景 业务需求:简化公司私有云,公有云的部署,尝试寻找更好的,更优化的技术方案替换现有的虚拟机部署方案. 技术背景: .net Docker 学习资料 Docker中文社区: http://www.d ...
- w7如何安装配置多个tomcat
最近工作比较闲,所以我就开始做自己的项目.公司的的项目用的是tomcat7 为了和公司的项目区分开,我打算再配置一个tomcat.问题也就随之而至.经过整理之后,我整理出了一个完整的流程.保证可以在w ...
- zBase --轻量级DOM操作库
项目地址:ZengTianShengZ-github zBase-1.2.0 --v3 修复部分bug,添加AMD规范测试 zBase-1.1.0 --v2 对 v1 版本做了升级,优化DOM查找,简 ...
- select函数的用法
首先介绍阻塞方式与非阻塞方式: 阻塞方式(block),就是进程或是线程执行到这些函数时必须等待某个事件的发生.如果事件没有发生,进程或线程就被阻塞,函数不能立即返回. 非阻塞方式(non-block ...
- CSS3形变——transform与transform-origin画时钟
css3属性transform和transform-origin"画"时钟 效果图 前言 八哥:哈喽,大家好!好攻城狮就是我就是你们的小八,欢迎收听你的月亮...哦不,是很高兴与你 ...