linux 配置 Sersync
[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>
相关文章
- nmon--分析 AIX 和 Linux 性能的免费工具
- linux下创建带password的用户
- Linux的linux aarch64和linux x86_64
- win10系统和linux配置环境变量wechaty token ID这是最基本的操作
- 为公网ssh远程树莓派/linux配置固定的tcp连接地址
- Linux环境变量PS1配置
- linux下如何卸载php
- # Linux 命令学习记录
- Linux&Tina&Melis内存布局分析以及linux reserved memory机制
- 验证Linux“__schedule“调用条件,关中断和关调度是必须的嘛?
- 在 Linux 上配置一个 syslog 服务器
- Linux安装Maven并配置阿里云镜像
- 在 Linux 上配置一个 syslog 服务器
- Linux 添加分区
- linux shell变量
- Linux下快速比较两个目录的不同
- nginx验证微信文件(linux服务器添加校验文件)
- Linux网络配置
- Linux如何查看进程、杀死进程、启动进程等常用命令
- [LINUX]使用SSH通过主机访问本地VMware虚拟机
- linux下vim的安装与配置(centos)
- linux查看有哪些用户连接到本机
- Linux_CentOS6.5安装vncserver实现图形化访问
- Linux常用命令记录
- Linux学习---linux下的彩蛋和各种有趣的命令
- Linux 系统的/etc目录
- Linux经常使用命令-文件搜索命令-文件搜索命令find
- 黑客在PS4成功装上Linux:然后玩嗨了
- Linux 安装和配置Redis
- 测试工作中经常用到的一丢Linux命令
- linux 字符终端terminal下 ftp的配置和启用
- linux cat 命令详解--转
- Linux VSFTP服务器详细配置
- 很全的linux网络编程技巧
- Linux汇编教程04:寻址方式