linux启动lsyncd服务,Lsyncd 实时同步

1、描述,, Lsyncd+ssh

开源lsyncd采用inotify原理监听某一个目录,如果目录内发生变化,利用rsync协议自动同步多服务器,因此lsyncd是一个轻量级的实时镜像解决方案。

细粒度的定制可以通过配置文件来实现,配置文件可以编写lua代码,这种方式简单,功能强大和灵活的配置。

2、开源软件

依赖lua环境:

#wget https://lsyncd.googlecode.com/files/lsyncd-2.1.5.tar.gz

#yum install lua lua-static lua-devel

#tar -xzvf lsyncd-2.1.5.tar.gz

#cd lsyncd-2.1.5

#./configure

#make

#make install

#whereis lsyncd

lsyncd: /usr/local/bin/lsyncd

创建配置文件目录:

#mkdir /etc/lsyncd

#cd /etc/lsyncd

#vim lsyncd.lua    --注意:lua语法的规则

文件配置语法

settings{

logfile = "/var/log/lsyncd.log",    #日志路径

statusFile = "/var/log/lsyncd-status.log",  #状态文件

pidfile = "/var/run/lsyncd.pid",  #pid文件路径

statusInterval = 1,    #状态文件写入最短时间

nodaemon = false,      #daemon运行

maxProcesses = 4,      #最大进程

maxDelays = 1          #最大延迟

}

##多host同步

servers = {

"192.168.0.10",

"192.168.0.20"

}

##同步规则

for _, server in ipairs(servers) do    ##迭代servers

sync{

default.rsyncssh,      ##默认rsync+ssh,rsync版本需要升级3以上版本

source = "/test1",    #源目录

delete = true,

host = server,

targetdir = "/test1",  #目标目录

exclude={

".txt"            #排除

},

rsync = {

binary = "/usr/bin/rsync",

archive = true,    #归档

compress = false,  #压缩

owner = true,      #属主

perms = true,      #权限

whole_file = false

},

ssh = {

port = 22

}

}

end

启动lsyncd服务:

#lsyncd /etc/lsyncd/lsyncd.lua

#ps -ef | grep lsyncd

lsyncd    lsyncd.lua

注意:服务器之间需要配置ssh 无密码登录

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值