使用rsync+lsync实现触发式实时同步

服务器信息

centos6.5

主:192.168.5.4 搭建lsync

从:192.168.5.3 搭建rsync

1.1 从服务器设置

  1. # yum -y install rsync xinetd
  2. # cp /etc/xinetd.d/rsync /etc/xinetd.d/rsync.blk
  3. # vim /etc/xinetd.d/rsync
  4. # default: off
  5. # description: The rsync server is a good addition to an ftp server, as it \
  6. # allows crc checksumming etc.
  7. service rsync
  8. {
  9. disable = no        →修改‘yes’为‘no
  10. flags = IPv6 →修改‘IPv6’为‘IPv4
  11. socket_type = stream
  12. wait = no
  13. user = root
  14. server = /usr/bin/rsync
  15. server_args = --daemon
  16. log_on_failure += USERID
  17. }
  18.  
  19. 1.2.启动xinetd并设置开机启动项。

# service xinetd start

# chkconfig xinetd on

1.3.创建同步文件的存放目录。

# mkdir /home/backup

1.4.创建rsyncd.conf配置文件。

# vim /etc/rsyncd.conf

[backup]                      →名字任意

path = /home/backup       →同步文件存放路径

hosts allow = 192.168.5.4          →允许连接的主机(指定主服务器IP)

hosts deny = *

list = true

uid = root

gid = root

read only = false

2.主服务器设定。

2.1.安装rsync。

# yum -y install rsync

2.2.创建同步对象中,不需要同步的文件一览表。

# vim /etc/rsync_exclude.lst

xx

xx.txt

2.3.在主服务器,执行以下命令。

测试将主服务器/data/下文件同步到从服务器/home/backup

# rsync -avz --delete --exclude-from=/etc/rsync_exclude.lst /data 192.168.5.3::backup

3.使用Rsync + Lsync,当文件或目录发生变更时,可做到实时同步。

3.1.登录主服务器,下载安装Lsync。

# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

# yum install lsyncd -y

3.2.配置lsyncd文件。

# cp /etc/sysconfig/lsyncd /etc/sysconfig/lsyncd.blk

# vim /etc/sysconfig/lsyncd

# Keep the space there for systemd. Don't nest variables without

# changing the systemd service file to use: /usr/bin/sh -c 'eval XXXX'

#

LSYNCD_OPTIONS="-pidfile /var/run/lsyncd.pid /etc/lsyncd.conf"  →去掉’‘#’

#LSYNCD_OPTIONS=" "

3.3.配置lsyncd.conf,添加以下内容:

# vim /etc/lsyncd.conf

settings{

statusFile = "/tmp/lsyncd.stat",

statusInterval = 1,

}

sync{

default.rsync,

source="/data",                        →指定需同步的源文件目录

target="192.168.5.3::backup",                   →从服务器IP:(rsyncd.conf设定的名字)

excludeFrom="/etc/rsync_exclude.lst",    →排除文件列表

}

3.4.启动lsync。

# /etc/rc.d/init.d/lsyncd start

# chkconfig lsyncd on

3.5.在主服务器,创建新测试文件。

data]# touch xx

3.6.在从服务器确认,同步成功。

# ls /home/backup

Rsync+lsync实现触发式实时同步的更多相关文章

  1. 文件触发式实时同步 Rsync+Sersync Rsync+Inotify-tools

    一.概述 1.Rsync+Sersync 是什么? 1)Sersync使用c++编写基于inotify开发的触发机制: 2)Sersync可以监控所监听的目录发生的变化(包括新建.修改.删除),具体到 ...

  2. Sersync实现触发式文件同步 替代inotify和rsync

    Sersync实现触发式文件同步 替代inotify和rsync Pyinotify是一个Python模块,用来监测文件系统的变化. Pyinotify依赖于Linux内核的功能—inotify(内核 ...

  3. rsync + inotify-tools实现文件的实时同步

    文章摘自:http://lxw66.blog.51cto.com/5547576/1331048 rsync 帮助文档:http://man.linuxde.net/rsync 最近有个想法就是部署一 ...

  4. rsync+inotify实现数据的实时同步更新

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

  5. rsync+sersync实现数据文件实时同步

    一.简介 sersync是基于Inotify开发的,类似于Inotify-tools的工具: sersync可以记录下被监听目录中发生变化的(包括增加.删除.修改)具体某一个文件或某一个目录的名字: ...

  6. rsync+inotify百万级文件实时同步

    实验环境:Centos7.4 目的:将源服务器的文件实时同步至目标服务器 源服务器:10.11.1.107 目标服务器:10.11.1.106 分别在两个节点安装rsync yum -y instal ...

  7. 使用rsync+inotify实现/www目录实时同步

    一.实现bak-server 1.1安装rsync # yum -y install rsync 1.2修改配置文件 # vi /etc/rsyncd.conf #添加下面内容 uid=test gi ...

  8. Sersync+Rsync实现触发式文件同步

    背景 通常我们在服务器上使用rsync加上crontab来定时地完成一些同步.备份文件的任务.随着业务和应用需求的不断扩大.实时性要求越来越高.一般rsync是通过校验所有文件后,进行差量同步,如果文 ...

  9. CentOS 7.2 Ubuntu 18部署Rsync + Lsyncd服务实现文件实时同步/备份

    发送端配置: 一.配置密钥 1. 主/从服务器之间启用基于密钥的身份验证.登录发送端服务器并用 " ssh-keygen " 命令生成公共或私有的密钥. 2. 使用 " ...

随机推荐

  1. 如何在R中加载”xlsx”包

    1.下载安装对应系统位数的JDK包(Java SE Development Kit) 2.完成后,安装rJava包-low-level r to Java Interface install.pack ...

  2. Hibernate之映射一对一关联

    一.一对一关联的概念: 一对一之间的关联是指:两张表中的信息是一对一的关系,比如我们每个人和身份证的关系,一个人对应一张身份证,一张身份证也只能对应一个人. Hibernate提供了两种映射一对一关联 ...

  3. MFC Edit控件 追加文本

    // 追加文本到EditControl void InstmDebugMainDlg::AppendText(int controlId, CString strAdd) {     ((CEdit* ...

  4. ajax读取XML文本(如读取城市)

    //加载城市 function loadArea_pep() { $.ajax({ url: "/xmlFile/crty.xml", success: function (res ...

  5. win7平台下React-Native Android:Unable to upload some APKs

    一.问题描述 根据网络上的Win7平台下React-native配置教程配置好开发环境的过程中,在艰难进行到react-native run-android这一步时,发现一直出现错误,截图如下: 错误 ...

  6. iOS 8 Xcode6 设置Launch Image 启动图片

    本人apem http://www.mamicode.com/info-detail-494411.html 如何设置App的启动图,也就是Launch Image? Step1 1.点击Image. ...

  7. 2016年11月5日--marquee标签、插入百度地图

    <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用marquee标记不仅可以移动文字,也可以移动图片,表格等. 语法:<marquee> ...

  8. json_decode()和json_encode()的使用方法

    json_decode对JSON格式的字符串进行编码 json_encode对变量进行 JSON 编码 JS中对JSON的解析 一.JSON字符串转换为JSON对象     要运用上面的str1,必须 ...

  9. 9.2---机器人走方格(CC150)

    这题就是dp的一般题目 public static int countWays(int x, int y){ if( x < 0 || y < 0) return -1; int[][] ...

  10. 转帖: 使用脚本删除程序(免除在[控制面板]->[添加或删除程序]中的手工操作)

    1. 代码:VBS strComputer = "." '这个表示本地计算机 Set objWMIService = GetObject("winmgmts:" ...