环境说明:

192.168.56.101 同步源
192.168.56.102 同步目标
操作系统centos 7
lsyncd项目地址:https://github.com/axkibe/lsyncd

  1.源主机root用户运行同步程序,backup用户验证目标主机;如果不想配密钥验证,同样支持密码验证,在运行时(nodaemon)提示输入或者在配置文件定义password_file参数。

生成密钥对(略),目标主机添加公钥,注意.ssh和密钥的属主权限
[root@192.168.56.102 ~]# echo "yyy" > /home/backup/.ssh/authorized_keys 源主机添加私钥
[root@192.168.56.101 ~]# echo "xxx" > /root/.ssh/backup_rsa
[root@192.168.56.101 ~]# chmod 600 /root/.ssh/backup_rsa
验证登录
[root@192.168.56.101 ~]# ssh -i /root/.ssh/backup_rsa backup@192.168.56.102

  2.源主机安装lsyncd,修改配置文件

安装lsyncd之前先安装epel-release
[root@192.168.56.101 ~]# yum install -y lsyncd
[root@192.168.56.101 ~]# rpm -qa | grep lsyncd
lsyncd-2.2.2-1.el7.x86_64
[root@192.168.56.101 ~]# cat /etc/lsyncd.conf
----
-- User configuration file for lsyncd.
--
-- Simple example for default rsync, but executing moves through on the target.
--
-- For more examples, see /usr/share/doc/lsyncd*/examples/
--
settings {
logfile = "/var/log/lsyncd.log",
statusFile = "/var/log/lsyncd.status",
} sync {
default.rsyncssh,
source = "/data/web/web1",
host = "backup@192.168.56.102",
targetdir = "/data/backup/web/web1",
-- 10秒同步一次,默认15秒
delay = 10,
rsync = {
archive = true,
compress = true,
verbose = true,
rsh = "ssh -o StrictHostKeyChecking=no -i /root/.ssh/backup_rsa",
}
} sync {
default.rsync,
source = "/data/web/web2",
target = "backup@192.168.56.102:/data/backup/web/web2",
rsync = {
archive = true,
compress = true,
verbose = true,
rsh = "ssh -o StrictHostKeyChecking=no -i /root/.ssh/backup_rsa",
--_extra = {"-e","ssh -o StrictHostKeyChecking=no","-e ssh -i /root/.ssh/backup_rsa"}
}
}

  3.源主机启动服务,看日志,目标主机检查文件同步

[root@192.168.56.101 ~]# systemctl start lsyncd

单源多目标需求可参考

https://www.stephenrlang.com/2015/12/how-to-install-and-configure-lsyncd/

  1.单目录同步到多机器:

源主机目录/data/web/sh.your.com同步到多机器
172.16.2.104:/data/web/sh.your.com
172.16.2.105:/data/web/sh.your.com

  2.多目录同步到相同机器:

源主机多目录
/data/web/resource.your.com
/data/web/www.your.com
同步到相同机器
172.16.2.99:/data/backup/web/resource.your.com
172.16.2.99:/data/backup/web/www.your.com
[root@HD1g-static-website ~]# cat /etc/lsyncd.conf
----
-- User configuration file for lsyncd.
--
-- Simple example for default rsync, but executing moves through on the target.
--
-- For more examples, see /usr/share/doc/lsyncd*/examples/
--
settings {
logfile = "/var/log/lsyncd.log",
statusFile = "/var/log/lsyncd.status",
} servers = {
"backup@172.16.2.104",
"backup@172.16.2.105",
}
for _, server in ipairs(servers) do
sync {
default.rsyncssh,
source = "/data/web/sh.your.com",
host = server,
targetdir = "/data/web/sh.your.com",
delay = 5,
rsync = {
archive = true,
compress = true,
verbose = true,
rsh = "ssh -o StrictHostKeyChecking=no -i /root/.ssh/backup_rsa",
}
}
end sites = {
"resource.your.com",
"www.your.com",
}
for _, site in ipairs(sites) do
sync {
default.rsyncssh,
source = "/data/web/" .. site,
host = "backup@172.16.2.99",
targetdir = "/data/backup/web/" .. site,
delay = 300,
rsync = {
archive = true,
compress = true,
verbose = true,
rsh = "ssh -o StrictHostKeyChecking=no -i /root/.ssh/backup_rsa",
}
}
end

  

[linux] lsyncd同步工具的更多相关文章

  1. linux rsync同步工具

    linux rsync同步工具 1.rsync介绍rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.rsync软件适用于unix/linux/windows ...

  2. Linux下同步工具inotify+rsync使用详解

    1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到同步,这 ...

  3. (转)Linux下同步工具inotify+rsync使用详解

    原文:https://segmentfault.com/a/1190000002427568 1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步 ...

  4. Linux文件同步工具之rsync

    学习背景 1.最近公司的项目在使用jenkins做自动化构建,因为jenkins在构建时是比较耗性能的,便单独使用了一台服务器做构建服务器.但是个人觉得这样成本过高,单独拿一台服务器来构建并且该服务器 ...

  5. 文件同步工具 lsyncd2.1.6 安装使用问题

    项目有文件实时同步备份的需求,做了一下调查,比较好的解决方法是使用lsyncd工具.这里主要记录一下遇到的问题及解决方法. lsyncd 的相关介绍和对比可见: lsyncd实时同步搭建指南——取代r ...

  6. Linux实战教学笔记21:Rsync数据同步工具

    第二十一节 Rsync数据同步工具 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载 ...

  7. Lsyncd - 实时文件同步工具(精译)

    原文: http://axkibe.github.io/lsyncd/ 描述 Lsyncd监视本地目录树事件监视器接口(inotify或fsevents).它聚集并组合事件几秒钟,然后生成一个(或多个 ...

  8. Linux目录同步到阿里云OSS工具ossutil

    Linux目录同步到阿里云OSS工具ossutil 背景 ​ 最近公司服务用户激增,常规文件服务器不能满足需求,严重影响性能,决定将静态文件迁移到阿里云OSS,用来解决性能问题,提高用户体验.毕竟之前 ...

  9. Linux系统备份还原工具4(rsync/远程数据同步工具)

    rsync即是能备份系统也是数据同步的工具. 在Jenkins上可以使用rsync结合SSH的免密登录做数据同步和分发.这样一来可以达到部署全命令化,不需要依赖任何插件去实现. 命令参考:http:/ ...

随机推荐

  1. atom / vscode (配置c++环境流程)

    最初主要是被这个炫酷的插件吸引了,这么打代码太特么有激情了 还有跳舞的初音姐姐哦!! 现附上一篇文章,这篇文章步骤讲得很详细了 http://blog.csdn.net/qq_36731677/art ...

  2. Linux系统编译Openssl步骤

    参照:  https://blog.csdn.net/luckydog612/article/details/80396077 1.提前准备工作 去https://www.openssl.org网站下 ...

  3. 关于使用Tomcat搭建的Web项目,出现 URL 中文乱码的问题解析

    URL编码问题 问题描述 使用 Tomcat 开发一个 Java Web 项目的时候,相信大多数人都遇到过url出现中文乱码的情况,绝大多数人为了避免出现这种问题,所以设计 url 一般都会尽量设计成 ...

  4. PosgreSQL 9.0 High Performance中文版瑕疵

    磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面: PostgreSQL杂记页     回到顶级页面:PostgreSQL索引页 发表此文不是为了吐槽,而是为了防止更多的受害者出现啊,拿到书后 ...

  5. 8-[CSS]-选择器

    1.选择器 首先来说一下,什么是选择器.在一个HTML页面中会有很多很多的元素,不同的元素可能会有不同的样式,某些元素又需要设置相同的样式,选择器就是用来从HTML页面中查找特定元素的,找到元素之后就 ...

  6. 【CF617D】Roads in Yusland

    [CF617D]Roads in Yusland 题面 蒯的洛谷的 题解 我们现在已经转化好了题目了,戳这里 那么我们考虑怎么求这个东西,我们先判断一下是否所有的边都能被覆盖,不行的话输出\(-1\) ...

  7. BZOJ3196 二逼平衡树 ZKW线段树套vector(滑稽)

    我实在是不想再打一遍树状数组套替罪羊树了... 然后在普通平衡树瞎逛的时候找到了以前看过vector题解 于是我想:为啥不把平衡树换成vector呢??? 然后我又去学了一下ZKW线段树 就用ZKW线 ...

  8. [Luogu4921]情侣?给我烧了![错位排列]

    题意 题意很清楚 \滑稽 分析 对于每一个询问 \(k\) ,记 \(g(x)\) 表示 \(x\) 对情侣都错开的方案总数,那么答案可以写成如下形式: \[ {ans}_k= \binom{n}{k ...

  9. Android Studio 重命名文件

    选中文件,Refactor——Rename AS提供了两种方式重命名,Rename 和 Rename File,暂时还不清楚区别.有知道的麻烦告知下.

  10. js,indexOf()、lastIndexOf()

    indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 提示和注释 注释:indexOf() 方法对大小写敏感! 注释:如果要检索的字符串值没有出现,则该方法返回 -1. 实例 在 ...