Rsync+lsync实现触发式实时同步
使用rsync+lsync实现触发式实时同步
服务器信息
centos6.5
主:192.168.5.4 搭建lsync
从:192.168.5.3 搭建rsync
1.1 从服务器设置
# yum -y install rsync xinetd
# cp /etc/xinetd.d/rsync /etc/xinetd.d/rsync.blk
# vim /etc/xinetd.d/rsync
# default: off
# description: The rsync server is a good addition to an ftp server, as it \
# allows crc checksumming etc.
service rsync
{
disable = no →修改‘yes’为‘no’
flags = IPv6 →修改‘IPv6’为‘IPv4’
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
} 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实现触发式实时同步的更多相关文章
- 文件触发式实时同步 Rsync+Sersync Rsync+Inotify-tools
一.概述 1.Rsync+Sersync 是什么? 1)Sersync使用c++编写基于inotify开发的触发机制: 2)Sersync可以监控所监听的目录发生的变化(包括新建.修改.删除),具体到 ...
- Sersync实现触发式文件同步 替代inotify和rsync
Sersync实现触发式文件同步 替代inotify和rsync Pyinotify是一个Python模块,用来监测文件系统的变化. Pyinotify依赖于Linux内核的功能—inotify(内核 ...
- rsync + inotify-tools实现文件的实时同步
文章摘自:http://lxw66.blog.51cto.com/5547576/1331048 rsync 帮助文档:http://man.linuxde.net/rsync 最近有个想法就是部署一 ...
- rsync+inotify实现数据的实时同步更新
rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rsync同步,这样 ...
- rsync+sersync实现数据文件实时同步
一.简介 sersync是基于Inotify开发的,类似于Inotify-tools的工具: sersync可以记录下被监听目录中发生变化的(包括增加.删除.修改)具体某一个文件或某一个目录的名字: ...
- rsync+inotify百万级文件实时同步
实验环境:Centos7.4 目的:将源服务器的文件实时同步至目标服务器 源服务器:10.11.1.107 目标服务器:10.11.1.106 分别在两个节点安装rsync yum -y instal ...
- 使用rsync+inotify实现/www目录实时同步
一.实现bak-server 1.1安装rsync # yum -y install rsync 1.2修改配置文件 # vi /etc/rsyncd.conf #添加下面内容 uid=test gi ...
- Sersync+Rsync实现触发式文件同步
背景 通常我们在服务器上使用rsync加上crontab来定时地完成一些同步.备份文件的任务.随着业务和应用需求的不断扩大.实时性要求越来越高.一般rsync是通过校验所有文件后,进行差量同步,如果文 ...
- CentOS 7.2 Ubuntu 18部署Rsync + Lsyncd服务实现文件实时同步/备份
发送端配置: 一.配置密钥 1. 主/从服务器之间启用基于密钥的身份验证.登录发送端服务器并用 " ssh-keygen " 命令生成公共或私有的密钥. 2. 使用 " ...
随机推荐
- corntab
http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html
- R笔记1
gsub format > measurements<-c('3.95*3.99*2.43mm','3*3*5mm','2*2*2mm') > measurements [1] &q ...
- Ruby学习之module
我们可以认为module是一个专门存放一系列方法和常量的工具箱. module和class非常像, 只是module不能创建实例也不能有子类, 它们仅仅能存放东西. 例如: module Circle ...
- HDOJ 1711 Number Sequence
Number Sequence Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- CodeForces 55D Beautiful numbers
D. Beautiful numbers time limit per test 4 seconds memory limit per test 256 megabytes input standar ...
- ACdream1063——平衡树
1.题目大意:让你设计一种数据结构,支持插入一个数,和在这个结构里查询结构中的哪个数和给定的数的异或值最小 2.分析:这个怎么做呢,就是trie树,我们建立一个trie树,把树按01进制存进去,然后在 ...
- Android学习笔记(八)——四种基本布局
//此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! 布局是一种可用于放置很多控件的容器,它可以按照一定的规律调整内部控件的位置,或是嵌套子布局,从而编写出精美的界 ...
- 谈谈jQuery之绑定事件
http://www.jiangweishan.com/article/jQuery-bind-on.html $.extend({ hook:function(hookName){ var sele ...
- iOS设计中的“代理”
“代理”--在iOS的开发设计中是一个非常重要的概念,同时又是十分基础的知识.所以,掌握“代理”势在必行! 以下,结合一个具体的例子,详细认识“代理”: 1, 图例解释: ①:定义两个文本输入框UIT ...
- STL next_permutation和prev_permutation函数
利用next_permutation实现全排列升序输出,从尾到头找到第一个可以交换的位置, 直接求到第一个不按升序排列的序列. #include <iostream> #include & ...