lsyncd+rsync文件实时同步

本文详细介绍如何在Linux环境下安装并配置rsync和Lsyncd,实现文件的实时同步。内容包括rsync的两种安装方式、配置rsync及Lsyncd的方法、启动与管理Lsyncd服务等。

转载自:http://seanlook.com/2015/05/06/lsyncd-synchronize-realtime/
    https://blog.youkuaiyun.com/magerguo/article/details/78828625

安装rsync

yum -y install rsync

或者编译安装:

cd /usr/local/src/
wget https://download.samba.org/pub/rsync/src/rsync-3.1.3.tar.gz
tar zxvf rsync-3.1.3.tar.gz
cd rsync-3.1.2
mkdir /usr/local/rsync
./configure –prefix=/usr/local/rsync
make && make install
vim /etc/profile.d/rsync.sh

#!/bin/sh
export PATH=$PATH:/usr/local/rsync/bin

ln -s /usr/local/rsync/bin/rsync /usr/bin/rsync
rsync –version

2.编辑rsync配置文件

vim /etc/rsyncd.conf
…略


安装Lsyncd
1. 安装lsyncd rpm资源,并安装lsyncd

rpm -iUvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
yum -y install lua lua-devel pkgconfig gcc asciidoc
yum install lsyncd

或编译安装:

sudo wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/lsyncd/lsyncd-2.1.5.tar.gz
./configure
make && make install

2.预先解决之后步骤的报错(测试复现率100%)

Error: Cannotretrieve metalink for repository: epel. Please verify its path and try again

解决方法:vi /etc/yum.repos.d/epel.repo编辑[epel]下的baseurl前的#号去掉,mirrorlist前添加#号。
正确的配置:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

3.为日志文件创建目录

mkdir /var/log/lsyncd

4.配置

vim /etc/lsyncd.conf

参考如下(这里使用ssh方式,先要互相打通):

settings {
        logfile = "/var/log/lsyncd/lsyncd.log",
        statusFile = "/var/log/lsyncd/lsyncd.status",
        inotifyMode = "CloseWrite or Modify",
}

sync {
    default.rsyncssh,
    source = "/home/admin/data/",
    host = "xxx.xxx.xxx.xxx",
    targetdir = "/home/admin/data/",
    maxDelays = 3,
    delay = 0,
    rsync = {
        archive  = true,
        compress = true,
        _extra   = {"--omit-dir-times","-e ssh -i /home/admin/.ssh/id_rsa"}
    }
}

5.启动Lsyncd服务

1.开启lsyncd服务
  /etc/init.d/lsyncd start
2.显示服务运行状态
  /etc/init.d/lsyncd status
3.设置lsyncd服务自启动
  chkconfig lsyncd on

更多详细配置请参考转载的原文。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值