centos7安装sersync2+rsync+inotify-tools实现文件实时同步

服务器准备:

A:100.251.70.190 (客户图片文件的上传)从A同步到B

B:100.251.70.191 (客服浏览器浏览下载)

操作步骤:

(A和B服务器都必须安装的)

# rpm -qa|grep rsync

rsync-3.0.9-15.el7.x86_64

# yum install rsync(没有rsync就安装一下)

(B服务器安装配置)

#工作中指定用户(需要指定用户)

uid = root

gid = root

#相当于黑洞.出错定位

use chroot = no

#有多少个客户端同时传文件

max connections = 200

#超时时间

timeout = 300

#进程号文件

pid file = /var/run/rsyncd.pid

#日志文件

lock file = /var/run/rsync.lock

#日志文件

log file = /var/log/rsyncd.log

#模块开始

#这个模块对应的是推送目录

#模块名称随便起

[tongbu]

#需要同步的目录

path = /opt/uploads

#表示出现错误忽略错误

ignore errors

#表示网络权限可写(本地控制真正可写)

read only = false

#这里设置IP或让不让同步

list = false

#指定允许的网段

hosts allow = 100.251.70.190

#拒绝链接的地址,以下表示没有拒绝的链接。

hosts deny = 0.0.0.0/32

#不要动的东西(默认情况)

#虚拟用户

auth users = root

#虚拟用户的密码文件

secrets file = /etc/rsync.password

配置访问账号密码

vi /etc/rsync.password

root:123456789

chmod 600 /etc/rsync.password

启动rsync 服务

rsync --daemon

ps -ef|grep rsync

netstat -tnulp|grep rsync

(A服务器安装配置)

配置访问账号密码

vi /etc/rsync.password

123456789

chmod 600 /etc/rsync.password

启动rsync 服务

rsync --daemon

ps -ef|grep rsync

netstat -tnulp|grep rsync

cd /opt

tar -zxvf sersync2.5.4_64bit_binary_stable_final.tar.gz

mv GNU-Linux-x86 /opt/sersync2

vi /opt/sersync2/confxml.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<head version="2.5">

<host hostip="localhost" port="8008"></host>

<debug start="false"/>

<fileSystem xfs="false"/>

<filter start="false">

<exclude expression="(.*)\.svn"></exclude>

<exclude expression="(.*)\.gz"></exclude>

<exclude expression="^info/*"></exclude>

<exclude expression="^static/*"></exclude>

</filter>

<inotify>

<delete start="true"/>

<createFolder start="true"/>

<createFile start="false"/>

<closeWrite start="true"/>

<moveFrom start="true"/>

<moveTo start="true"/>

<attrib start="false"/>

<modify start="false"/>

</inotify>

<sersync>

<localpath watch="/opt/uploads">

<remote ip="100.251.70.191" name="tongbu"/>

<!--<remote ip="192.168.8.39" name="tongbu"/>-->

<!--<remote ip="192.168.8.40" name="tongbu"/>-->

</localpath>

<rsync>

<commonParams params="-artuz"/>

<auth start="true" users="root" passwordfile="/etc/rsync.password"/>

<userDefinedPort start="false" port="874"/><!-- port=874 -->

<timeout start="false" time="100"/><!-- timeout=100 -->

<ssh start="false"/>

</rsync>

<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once-->

<crontab start="false" schedule="600"><!--600mins-->

<crontabfilter start="false">

<exclude expression="*.php"></exclude>

<exclude expression="info/*"></exclude>

</crontabfilter>

</crontab>

<plugin start="false" name="command"/>

</sersync>

<plugin name="command">

<param prefix="/bin/sh" suffix="" ignoreError="true"/>  <!--prefix /opt/tongbu/mmm.sh suffix-->

<filter start="false">

<include expression="(.*)\.php"/>

<include expression="(.*)\.sh"/>

</filter>

</plugin>

<plugin name="socket">

<localpath watch="/opt/tongbu">

<deshost ip="192.168.138.20" port="8009"/>

</localpath>

</plugin>

<plugin name="refreshCDN">

<localpath watch="/data0/htdocs/cms.xoyo.com/site/">

<cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" passwd="xxxx"/>

<sendurl base="http://pic.xoyo.com/cms"/>

<regexurl regex="false" match="cms.xoyo.com/site([/a-zA-Z0-9]*).xoyo.com/images"/>

</localpath>

</plugin>

</head>

# cd /opt/sersync2

# ./sersync2 -d

# ps -ef|grep rsync

# rsync -avSH ./uploads/ [email protected]::tongbu

参考:

http://blog.itpub.net/28624388/viewspace-767104/

http://www.jb51.net/LINUXjishu/142722.html

http://www.jb51.net/LINUXjishu/142722.html

时间: 2025-01-04 16:50:30

centos7安装sersync2+rsync+inotify-tools实现文件实时同步的相关文章

rsync+inotify 实现服务器文件实时同步

rsync+inotify 实现服务器文件实时同步 操作系统:CentOS 6.X 源服务器:192.168.80.132 目标服务器:192.168.80.128 目的:把源服务器上/data/app目录实时同步到目标服务器的/data/app下 具体操作: 第一部分:在目标服务器192.168.80.128上操作 一.在目标服务器安装Rsync服务端 1.关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #SELINUXTYPE=targ

rsync+inotify节点间文件实时同步

说明: 操作系统:CentOS 7.2 server服务器(代码.数据检入)server: SLB-1:10.171.63.120 client服务器(数据检出.主动推送)client:WWW:10.163.0.233 目的:把client服务器上/www/web目录实时同步到server服务器的/www/web下 ============================================================ 具体操作: 第一部分:在server--SLB-1_10.1

配置rsync+inotify实现站点文件实时同步

一.rsync简介 rsync是linux系统下的数据镜像备份工具.可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,在传输前执行压缩,因此非常适用于异地备份.镜像服务器等应用. rsync的官方站点为http:rsync.samba.org/ 二.使用rsync备份工具 2.1.rsync命令的基本用法 用法类似于cp命令,例如将文件/etc/fstab 和目录/boot/grub同步备份到.opt目录下,其中-r表示递归整个目录,-l选项用来备份链接文

rsync+ssh+inotify实现服务器文件实时同步

如何实现两台web服务器的文件同步的,答案是rsync,但是,如何做到实时同步呢,cron已经达不到这样的要求了,同步的再快,也会有时间间隔,cron时刻执行,也会浪费系统的资源,下面,我将介绍ssh+rsync+inotify来实现两台web间的文件实时同步. 拓扑如下:  实验的linux系统为CentOS 6.5,实验之前确保开发环境已安装完毕 首先,我们介绍一下inotify,这是linux的一个新特性,在2.6的内核开始加入,它是监控文件系统,并且及时的向我们的rsync发出相关信息,

centos7中配置rsync+inotify实现自动监控数据同步

rsync服务可以实现数据的同步,但不是自动同步,所以在一些网站服务等, 需要用到inotify进行自动监控. 实验环境:centos7 两台 能互相ping通对方.一台为源端,一台为发起端. 该实验博主源端地址:192.168.60.135 发起端地址:192.168.60.136 http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz 这是inotify网址,进网站响应很慢,耐心等待. 一.源

rsync+inotify实现数据单向实时同步

主服务器端,向从服务器端实时同步数据 master端IP地址:192.168.1.39(node1) slave端IP地址:192.168.1.40 (node2) 一.配置从服务器 在从服务器安装rsync,创建并配置rsync文件. [[email protected] ~]# yum install -y rsync hosts allow = 192.168.1.39 hosts deny = * list = true uid = root gid = root pid file = 

rsync+inotify实现数据的实时同步

一,简介: 1. rsync是类unix系统下的数据镜像备份工具--remote sync.一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步.与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等.随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业

rsync+inotify实现Git数据实时同步备份

定时备份和实时备份 说到备份,无疑于定时备份和实时同步备份.定时备份可以通过脚本或者Crontab来实现,而实时同步备份可以通过某些接口监控文件的各种变化情况来实现的(比如内核接口inotify):通过对比可以发现对数据信息要求高的环境使用实时同步备份可以更好更有利的保护数据的安全性. 软件介绍之rsync rsync说明 rsync 远程同步,同步是把数据从缓冲区同步到磁盘上去的.数据在内存缓存区完成之后还没有写入到磁盘中去.所以有时候要同步到磁盘中去的,而rsync说白了和复制差不多.能将一

使用rsync+inotify-tools+ssh实现文件实时同步

在某些服务器架构中,会遇到文件同步问题,例如需要做站点镜像备份,同步文件到多个CDN节点等.需要解决的主要有两个问题 1.如何实现文件同步问题? 2.何时执行同步操作? 文件同步可以使用rsync+ssh,什么时候自行同步操作呢?可能部分人会想到cron,这个没错,可以实现的,但是确实有点浪费资源,因为cron并不知道文件是否被修改过,只是不停的周期性的执行,如果文件修改后再执行同步操作,不修改就不执行那应该比较好,其实inotify就可以做到,只要你的服务器不是古董级别的,就支持inotify