Lsyncd 实时同步

2023-11-11

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 无密码登录


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lsyncd 实时同步 的相关文章

  • 用Rsync,实现网站的增量部署

    整个网站通常会很大 尤其的其中静态的图片视频之类 但我们通常不会修改他们 平常只会修改几个文件 如果每次更新都将整个网站从本地上传到服务器 无疑很费时间 如果要找到修改的文件 并只上传这些文件 甚至只上传这些文件修改的部分 无疑会方便很多
  • 如何使用 Rsync 排除文件和目录

    Rsync 是一种快速且多功能的命令行实用程序 可通过远程 shell 在两个位置之间同步文件和文件夹 使用 Rsync 您可以镜像数据 创建增量备份以及在系统之间复制文件 复制数据时 您可能需要根据名称或位置排除一个或多个文件或目录 在本
  • Linux:虚拟机配置免密登录和文件同步分发

    记录下 以后照抄就好了 文章目录 ssh免密登录 SCP安全拷贝 rsync同步修改 xsync集群分发 ssh免密登录 免密登录原理 生成公钥和私钥 ssh keygen t rsa后连敲三个回车 将公钥拷贝到要免密登录的目标机器上 遇到
  • 多进程操作sqlite的数据同步问题

    背景 最近写在多进程任务里操作sqlite的时候 发现数据同步是个头疼的问题 因为sqlite本身并不支持存储过程 procedure 它本身也没有可以单独调用对数据表的锁 可能是我没找到 如果有人知道还请赐教 这就意味着在执行一系列修改数
  • 【大数据】CDC 技术:变化数据捕获

    CDC 技术 变化数据捕获 1 什么是 CDC 2 批处理 vs CDC 3 四种 CDC 的实现方法 3 1 表元信息 Table metadata 3 2 表求差 Table differences 3 3 数据库触发器 Trigger
  • Linux 中的 Rsync 命令及示例

    rsync是一个快速且多功能的命令行实用程序 用于通过远程 shell 在两个位置之间或从 到远程 Rsync 守护进程同步文件和目录 它通过仅传输源和目标之间的差异来提供快速增量文件传输 Rsync 可用于镜像数据 增量备份 在系统之间复
  • [Linux]rsync显示进度

    rsync a progress info progress2
  • 微服务架构-Day7

    学习目标 学会微服务架构 对应项目hotel demo 学习笔记 1 数据聚合 聚合 aggregations 可以让我们极其方便的实现对数据的统计 分析 运算 实现这些统计功能的比数据库的sql要方便的多 而且查询速度非常快 可以实现近实
  • bash:rsync,选项作为变量

    我正在编写 bash 脚本 该脚本在某些部分将通过 ssh 同步文件 不幸的是 我面临着将 rsync 选项保持为变量的问题 请看下面 variables directory etc backupDirectory backup incre
  • 通过 PHP exec() 进行 Rsync,使用 SSH 无密码 ssh 登录

    如果我通过 php exec 运行命令 它不起作用 但如果我使用 bash 它运行得非常完美 知道问题可能是什么吗 我在想也许它正在作为 apache 执行 rsync 并且不允许 ssh 登录 exec rsync au var www
  • 缺少更新 GCloud 上静态 ReactJS 站点的步骤

    人们可能会认为简单地替换与应用程序关联的存储桶中的内容就会更新应用程序 但事实并非如此 I have a site that I deployed yesterday I created the bucket then in the com
  • shell for 循环中的 rsync [重复]

    这个问题在这里已经有答案了 我有这个 shell 脚本 bin sh PATHS a b c d for PATH in PATHS do rsync avziP home user PATH SERVER server folder b
  • 两台服务器之间的远程 rsync 管道损坏

    我正在尝试在 ubuntu 16 04 上使用 bash 将大型数据集 768 Gigs 从一台远程计算机传输到另一台远程计算机 我遇到的问题是 我使用 rsync 机器将传输几个小时 然后在连接不可避免地中断时退出 假设我在机器 A 上
  • 在Python中寻找跨平台的类似rsync的功能,例如rsync.py

    我正在用 python 实现备份脚本 我正在努力保持跨平台 我听说有一个基于 python 的 rsync 实现 http pypi python org pypi rsync py http pypi python org pypi rs
  • 使用 rsync(或 svn、git、cvs)进行部署并忽略部署期间不一致的状态?

    我们目前正在讨论通过 rsync 部署网站 但是 在 rsync 过程中 应用程序处于不一致的状态 因为某些文件可能已经同步 而其他文件仍保留旧版本 对吗 人们如何处理这个问题 我猜想通过 svn git cvs 部署时也存在同样的问题 我
  • 使用 rsync 仅同步修改过的文件

    我正在尝试同步两个文件夹 developer and shared 在Ubuntu中 当我修改文件时 shared 我希望能够将文件复制到 developer folder I tried rsync r shared developer
  • rsync 排除目录但包含子目录

    我正在尝试使用 rsync 将项目复制到我的服务器 我的子目录中有项目特定的安装脚本 项目 规格 安装 project1 我想做的就是排除其中的所有内容项目 规格目录 但项目特定的安装目录 项目 规格 安装 project1 rsync a
  • 通过高延迟网络连接同步许多(小)文件的方法

    我们通常使用 Subversion 将软件应用程序部署到客户端 客户端上的 svn 更新 单向 目前 我们的一位客户遇到了问题 因为延迟很高 大文件下载速度很好 因为他们位于中国 而我们的服务器位于加拿大 Subversion 在很长一段时
  • 使用 RSYNC,包含和排除如何组合?

    我想 rsync Volumes B 中的所有内容 除了缓存目录 我想全局排除它 另外 我不想同步任何其他 Volume 我有以下排除文件 Volumes B Cache Volumes 第一行和第三行似乎工作正常 除了 rsync 还拾取
  • 将 gsutil 与谷歌驱动器(不是谷歌云存储)一起使用

    gsutil https cloud google com storage docs gsutil csw 1 gettingstarted use 博托配置文件 https cloud google com storage docs gs

随机推荐

  • Java中wait和sleep方法的区别

    两者的区别 这两个方法来自不同的类分别是Thread和Object 最主要是sleep方法没有释放锁 而wait方法释放了锁 使得其他线程可以使用同步控制块或者方法 锁代码块和方法锁 wait notify和notifyAll只能在同步控制
  • 探索Java8——用Optional取代null

    文章目录 为缺失值建模 采用防御式检查减少 NullPointerException Optional类入门 应用 Optional 的几种模式 为缺失值建模 假设你需要处理下面这样的嵌套对象 这是一个拥有汽车及汽车保险的客户 public
  • pyqt和ros结合使用接受相机和点云消息并展示(附代码)

    代码是 ROS 节点的 Python QT脚本 用于订阅 turtle1 cmd vel tracking image 和 test pointcloud 话题 脚本首先通过 ps 命令检查是否已启动 ROS 主节点 如果没有则启动一个新的
  • Kafka事务提交位点失败

    记一次kafka事务提交失败 线上业务报错 2019 10 29 20 27 48 621 l fin ycb sync server1 toc pre ali dm org springframework kafka KafkaListe
  • geopandas安装方法

    依次按顺序安装 在这下载依赖包 https www lfd uci edu gohlke pythonlibs 然后逐个安装 1 安装gdal pip install C Users lenovo Downloads GDAL 3 4 3
  • ajax调用echarts,ajax和echarts第一次相遇

    ajax和echarts渲染基础 对于动态数据的展示 数据库内容的实时展示 如何能快速高校的在前端图表中展示呢 今天 小柯君带你简单体会一下ajax的神奇可妙之处 要加油啊 各位君 一 echarts简单案例 1 先导入你下载好的echar
  • 报错类型提示:HEAP CORRUPTION DETECTED:after Nomal block

    上次做实验遇到了这个报错 足足调了好久 最后上网查了才知道为什么 注释处的代码就原本发生错误的代码 原因是你使用了你没有调用的空间 然后你用delete回收的时候回收了你未调用的空间 所以报错
  • 小规模票表比对不通过_增值税小规模纳税人申报比对异常怎么办?这里有最新处理流程...

    小规模纳税人的申报比对异常如何提示 应该到哪个科 所 进行处理 该科 所 在哪里 赶紧往下看吧 猴嗨森 发送报表后 提示 一窗式比对不通过 怎么办 根据异常事项提供相关证明材料到主管税务机关办理 牛给力 猴嗨森 需要预约号处理小规模纳税人申
  • Servlet 执行原理和API 详情

    目录 1 Serlvet 运行原理 1 1 Tomcat 执行流程 a Tomcat 初始化流程 b Tomcat处理请求流程 c Servlet 中 service 法的实现 2 Servlet API详解 2 1 HttpServlet
  • 猿蜕变系列5——一文搞懂Controller的花式编写

    看过之前的执行流程 相信你对springMVC有了一定的认识 今天我们继续来学习springMVC相关的核心知识 帮助你快速起飞 完成蜕变 猿蜕变同样是一个原创系列文章 帮助你从一个普通的小白 开始掌握一些行业内通用的框架技术知识以及锻炼你
  • 最新win10+2080Ti下安装TensorFlow-GPU(带各个版本的cuda cudnn)

    最新实测好用 环境 Windows10 2080Ti 显卡 安装网上说的教程进行安装 需要的配置环境 cuda10 cudnn 7 3 1 版本这里谨记一点 不要进去下最新的版本 到目前发布为止 官网的cuda版本为10 1 地址 http
  • node包管理器nvm的安装与使用,以及安装遇到的问题和解决方案

    前言 随着vue3 0的普及 公司的新项目也都开始使用vue3 0 typescript vite的模式了 但是有的老项目还在有vue2 0 所以在开发不同项目的时候就会遇到因为node版本不同带来的各种不兼容 这个时候就需要用到nvm管理
  • 数据库——自然连接、内连接、外连接(左外连接、右外连接、全外连接)、交叉连接

    1 自然连接 natural join 自然连接不用指定连接列 也不能使用ON语句 它默认比较两张表里相同的列 SELECT FROM student NATURAL JOIN score 显示结果如下 2 内连接 inner join 和
  • Android 内存优化(四) —— 未取消注册或回调导致内存泄露

    未取消注册或回调导致内存泄露 比如我们在 Activity 中注册广播 如果在 Activity 销毁后不取消注册 那么这个刚播会一直存在 系统中 同上面所说的非静态内部类一样持有 Activity 引用 导致内存泄露 因此注册广播后在 A
  • Django连接Mysql报错:ModuleNotFoundError: No module named 'MySQLdb'

    Django连接Mysql报错 环境 Django 1 11 8 与 Python 3 6 ModuleNotFoundError No module named MySQLdb django core exceptions Imprope
  • 实验一,简单的C++程序

    实验1 简单的C 程序 一 实验目的和要求 1 熟悉Visual C 6 0编译系统的常用功能 2 学会使用Visual C 6 0编译系统实现简单的C 程序 3 熟悉C 程序的基本结构 学会使用简单的输入 输出操作 二 实验内容 1 编译
  • 短视频源码PHP进入大屏时期,你会观看吗?

    网络环境的开展 电视能够说是离我们越来越远 在网络 手机的普遍应用下 短视频行业 直播行业都更倾向于手机端开展 而小小的手机屏幕曾经不能满足用户的需求 假如将短视频源码PHP与电视分离会是怎样的场景呢 固然我们对电视观看的次数降落 但电视的
  • js的if条件判断

    js的if条件判断 if 条件表达式 console log true 如果条件表达式为true 执行该处代码 不再执行else后面代码 else console log false 如果条件表达式为false 执行该处代码 if 1 co
  • ajax异步获取svg,jQuery的AJAX从文件中检索SVG - 错误:“没有很好地形成”(jQuery AJAX r...

    我一直在使用从Inkscape中许多不同的SVG和使用 load了一会儿特定的容器元素 最近 我试图改变负载于获取 AJAX 主要是为了能够预先设置SVG 这pefectly工作 SVG前置到元素应该做的 问题是我得到的控制台错误使用检索S
  • Lsyncd 实时同步

    1 描述 Lsyncd ssh 开源lsyncd采用inotify原理监听某一个目录 如果目录内发生变化 利用rsync协议自动同步多服务器 因此lsyncd是一个轻量级的实时镜像解决方案 细粒度的定制可以通过配置文件来实现 配置文件可以编