[root@SERSYNC sersync]# cp conf/confxml.xml conf/confxml.xml.bak.$(date +%F)

[root@SERSYNC sersync]# ls

bin  conf  logs

[root@SERSYNC sersync]# ls conf/

confxml.xml  confxml.xml.bak.2014-06-04

初始化的配置文件内容如下:

[root@SERSYNC sersync]# cat conf/confxml.xml -n

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

2<head version="2.5">

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

4    <debug start="false"/>

5    <fileSystem xfs="false"/>

6    <filter start="false">

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

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

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

11    </filter>

12    <inotify>

13<delete start="true"/>

14<createFolder start="true"/>

15<createFile start="false"/>

16<closeWrite start="true"/>

17<moveFrom start="true"/>

18<moveTo start="true"/>

19<attrib start="false"/>

20<modify start="false"/>

21    </inotify>

23    <sersync>

24<localpath watch="/opt/tongbu">

25    <remote ip="127.0.0.1" name="tongbu1"/>

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

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

28</localpath>

29<rsync>

30    <commonParams params="-artuz"/>

31    <auth
start="false" users="root" passwordfile="/etc/rsync.pas"/>

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

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

34    <ssh start="false"/>

35</rsync>

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

38    <crontabfilter start="false">

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

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

41    </crontabfilter>

42</crontab>

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

44    </sersync>

46    <plugin name="command">

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

m.sh suffix-->

48<filter start="false">

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

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

51</filter>

52    </plugin>

54    <plugin name="socket">

55<localpath watch="/opt/tongbu">

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

57</localpath>

58    </plugin>

59    <plugin name="refreshCDN">

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

61    <cdninfo domainname="ccms.chinacache.com"
port="80" username="xxxx"
pass wd="xxxx"/>

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

es"/>

64</localpath>

65    </plugin>

66</head>

为了满足我们的需求,我们需要修改如下几处设置:

1 修改 24-28 行的内容,原内容为:

<localpathwatch="/opt/tongbu">        #定义本地要同步的目录

<remoteip="127.0.0.1"
name="tongbu1"/>
 #

<!--<remoteip="192.168.8.39" name="tongbu"/>-->     #同步到哪个机器,,同步到

机器的哪个模块

<!--<remoteip="192.168.8.40" name="tongbu"/>-->

</localpath>

修改后内容为:

<localpathwatch="/data/web">

<remoteip="172.16.100.1" name="web"/>     #这里取掉了两旁的注释

<remoteip="172.16.100.2" name="web"/>     #这里取掉了两旁的注释

</localpath>

该文件中分隔符形式为:<!--###########################-->

2 修改 31-34 行,认证相关部分:

<commonParamsparams="-artuz"/>

<auth start="false"users="root"
passwordfile="/etc/rsync.pas"/>

<userDefinedPortstart="false" port="874"/><!-- port=874 -->

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

<sshstart="false"/>

修改后内容为:

<commonParamsparams="-aruz"/>

<userDefinedPortstart="false" port="874"/><!-- port=874 -->

<timeoutstart="true"
time="100"/><!-- timeout=100 -->

<sshstart="false"/>
提示:上面的几个配置就是在拼接

rsync -aruz --timeout=100 /data/web

rsync_bak@172.16.100.1::www/

--password-file=/etc/rsync.password

3)修改 36-37 行

<failLogpath="/tmp/rsync_fail_log.sh"timeToExecute="60"/><!--default every 60mins exe

cute once-->

修改后内容为

<failLog path="/usr/local/sersync/logs/rsync_fail_log.sh "timeToExecute="60"/><!--defau

lt every 60mins execute once-->

当同步失败后,日志记录到/usr/local/sersync/logs/rsync_fail_log.sh,并且每 60 分钟对失败的

log 进行重新同步。

修改后的完整配置文件为:

[root@SERSYNC sersync]# cat -n /usr/local/sersync/conf/confxml.xml

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

2<head version="2.5">

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

4    <debug
start="false"/>

5    <fileSystem xfs="false"/>

6    <filter
start="false">

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

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

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

11    </filter>

12    <inotify>

13<delete start="true"/>

14<createFolder start="true"/>

15<createFile start="false"/>

16<closeWrite start="true"/>

17<moveFrom start="true"/>

18<moveTo start="true"/>

19<attrib start="false"/>

20<modify start="false"/>

21    </inotify>

23    <sersync>

24<localpath watch="/data/web">

25    <remote ip="172.16.100.1" name="web"/>

26    <remote ip="172.16.100.2" name="web"/>

27</localpath>

28<rsync>

29    <commonParams params="-aruz"/>

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

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

32    <timeout start="true" time="100"/><!-- timeout=100 -->

33    <ssh start="false"/>

34</rsync>

35<failLog path="/usr/local/logs/rsync_fail_log.sh" timeToExecute="60"/><!--default e very 60mins execute once-->

37    <crontabfilter start="false">

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

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

40    </crontabfilter>

41</crontab>

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

43    </sersync>

45    <plugin name="command">

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

m.sh suffix-->

47<filter start="false">

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

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

50</filter>

51    </plugin>

53    <plugin name="socket">

54<localpath watch="/opt/tongbu">

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

56</localpath>

57    </plugin>

58    <plugin name="refreshCDN">

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

60    <cdninfo domainname="ccms.chinacache.com"
port="80" username="xxxx"
pass wd="xxxx"/>

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

es"/>

63</localpath>

64    </plugin>

65</head>

以上的配置文件,我们仅仅配置了针对 SWEB1 和 SWEB2 上 web 这个模块,即/data/web

目录的自动同步。由于我们还有一个 download 模块,即/data/download 目录需要进行自动

同步。因此这就意味着,我们需要配置多实例了。

Sersync 的多实例和往常的 apache,nginx 一样,你只需要把配置文件拷贝一份出来,然后针

对不同的实例做不同的修改,然后在最后开启 sersync 服务的时候指定不同的配置文件做启动

即可!

配置针对 download 的实例配置文件:

[root@SERSYNC sersync]# cp /usr/local/sersync/conf/confxml.xml /usr/local/sersync/con

1

f/download_confxml.xml

修改方法如上,这里仅贴出和上个实例之间不一样的地方:

23    <sersync>

24<localpath watch="/data/download">

25    <remote ip="172.16.100.1" name="download"/>

26    <remote ip="172.16.100.2" name="download"/>

27</localpath>

28<rsync>

linux 配置 Sersync的更多相关文章

  1. (转)Linux系统sersync数据实时同步

    Linux系统sersync数据实时同步 原文:http://blog.csdn.net/mingongge/article/details/52985259 前面介绍了以守护进程的方式传输或同步数据 ...

  2. linux配置网卡IP地址命令详细介绍及一些常用网络配置命令

    linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...

  3. linux配置java环境变量(详细)

    linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...

  4. linux配置hosts

    linux配置hosts linux下配置hosts和windows下其实就是一样的,找到文件在哪里就好 sudo vim /etc/hosts

  5. linux配置java环境变量

    linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...

  6. Linux 配置本地yum源

    Linux 配置无网络状态利用yum安装软件 在有网络的情况下安装软件只需一条yum install xxx命令,例如安装gcc只需一条指令:yum install gcc  那么在没有网络的情况下该 ...

  7. Linux配置支持高并发TCP连接(socket最大连接数)

    Linux配置支持高并发TCP连接(socket最大连接数) Linux配置支持高并发TCP连接(socket最大连接数)及优化内核参数 2011-08-09 15:20:58|  分类:LNMP&a ...

  8. Linux配置完iptables后,重启失效的解决方案

    Linux配置完iptables后,重启失效的解决方案 因为只有root用户才可访问1024以下的端口,非root用户登陆是不能启用80端口的.web service 往往启动1024以上的端口,并通 ...

  9. linux配置java环境变量(转)

    linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...

随机推荐

  1. BZOJ 4026: dC Loves Number Theory 可持久化线段树 + 欧拉函数 + 数学

    Code: #include <bits/stdc++.h> #define ll long long #define maxn 50207 #define setIO(s) freope ...

  2. BP算法演示

    本文转载自https://mattmazur.com/2015/03/17/a-step-by-step-backpropagation-example/ Background Backpropaga ...

  3. ORB an efficient alternative to SIFT or SURF

    AbstractFeature matching is at the base of many computer vision problems, such as object recognition ...

  4. Spring Cloud教程(八)云原生应用程序

    Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线).分布式系统的协调导致了样板模式, 使用Spring Clo ...

  5. andriod\iphone视频禁止全屏播放

    x-webkit-airplay="true" x5-playsinline="true" webkit-playsinline="true" ...

  6. Matlab 读取文件夹里所有的文件

    (image = dir('D:\gesture\*.*'); % dir是指定文件夹得位置,他与dos下的dir用法相同. 用法有三种: 1. dir 是指工作在当前文件夹里 2. dir name ...

  7. 如何修改linux 用户登录后默认目录

    1.linux用户登录后默认目录是在/etc/passwd文件设置的.如下图所示,一共显示了四行数据,其中第一行的/root即为root用户登录后的默认目录,第二行daemon用户的默认目录是/usr ...

  8. Netty 系列之 Netty 高性能之道 高性能的三个主题 Netty使得开发者能够轻松地接受大量打开的套接字 Java 序列化

    Netty系列之Netty高性能之道 https://www.infoq.cn/article/netty-high-performance 李林锋 2014 年 5 月 29 日 话题:性能调优语言 ...

  9. 第三方框架:EventBus

    1 研发背景 案例:我们在主页点收藏按钮,未登录状态,跳登录界面,在登录界面跳注册页面,注册成功,关闭注册页面,关闭登录页面,回到主页,刷新item列表和登录状态. 我们一般会用到发送广播和接收广播来 ...

  10. 002-使用Spring实现读写分离(MySQL实现主从复制)

    一. 背景 一般应用对数据库而言都是“读多写少”,也就说对数据库读取数据的压力比较大主库,负责写入数据,我们称之为:写库:从库,负责读取数据,我们称之为:读库: 1. 读库和写库的数据一致:2. 写数 ...