龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

lsyncd+rsync实现实时自动同步

时间:2014-05-31 16:03来源:网络整理 作者:网络 点击:
分享到:
一、概述 一般rsync软件是通过crond这支后台进行(计划任务)来实现自动同步数据,如今已有更好的开源软件来代替使用crond了,那就是lsyncd( Live Syncing (Mirror) Daemon),它的工作原理:

一、概述

一般rsync软件是通过crond这支后台进行(计划任务)来实现自动同步数据,如今已有更好的开源软件来代替使用crond了,那就是lsyncd( Live Syncing (Mirror) Daemon)它的工作原理:监视本地(rsync client)的目录,当源数据有文件或目录更新时,更新本地文件或目录到远端机器(rsync server),保持实时文件同步,但是它更新数据时需要远端rsync server运行rsync demon

配置环境如下
(1)需要配置rsyncd.conf文件的一端,称为rsync server
(2)不需要配置rsyncd.conf文件的一端,称为rsync client
(3)本次环境如下
rsync服务器:192.168.0.53(安装rsync)
rsync客户端:192.168.0.54(安装rsyncd
+lsyncd

lsyncd的功能:
(1)开源软件lsyncd采用inotify原理监听某一目录,如果目录内发生增、删、改、利用rsync协议自动同步到多个服务器
(2)inotify,从kernel 2.6.13开始正式并入内核,RHEL5支持
(3)可以本地多点目录的监控并实现到远程目录的同步
(4)
在rsync client上通过lsyncd监控并推送数据给rsync server的rsync daemon,rsync server接收lsyncd推送过来的数据,并写入本地磁盘
(5)官方介绍:http://code.google.com/p/lsyncd
注意:而对于那种实时都在变化的数据(例如:数据库),那么这种数据的同步,
DRBD技术是一个更好的选择



二、软件的下载与安装

1、服务器端(rsync)

(1)下载并安装rsync
[root@example1 ~]# wget http://www.samba.org/ftp/rsync/src/rsync-3.0.7.tar.gz

[root@example1 ~]# tar zxvf rsync-3.0.7.tar.gz
[root@example1 ~]# ./configure --prefix=/usr/local/rsync --with-rsyncd-conf=/usr/local/rsync/etc/rsyncd.conf --disable-ipv6 && make && make install

(3)创建用于同步数据的目录(rsync服务器端)
作用:该目录用于存放lsyncd推送过来的数据
[root@example1 ~]# mkdir /tmp/share/
[root@example1 ~]# chown -R root:root /tmp/share;

2、客户端(lsyncd+rsync)

(1)下载并安装rsync,无需配置rsyncd.conf
[root@example2 ~]# wget http://www.samba.org/ftp/rsync/src/rsync-3.0.7.tar.gz
[root@example2 ~]# tar zxvf rsync-3.0.7.tar.gz
[root@example2 ~]# ./configure --prefix=/usr/local/rsync  --disable-ipv6 && make && make install

(2)下载并安装lsyncd
[root@example2 ~]# wget http://lsyncd.googlecode.com/files/lsyncd-1.26.tar.gz
[root@example2 ~]# tar zxvf lsyncd-1.26.tar.gz
[root@example2 ~]# ./configure --prefix=/usr/local/lsyncd --enable-xml-config && make && make install

精彩图集

赞助商链接