LINUX系统使用软件异地同步数据(灾备)
rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步
一、宝塔环境:
有宝塔软件商城支持,参考:https://www.bt.cn/bbs/thread-98022-1-1.html
二、其他环境:
实现工具:lsyncd
lsyncd结合了inotify + rsync,Lsyncd监视本地目录树事件监视器接口(inotify或fsevents)。它聚合和组合事件几秒钟,
然后生成一个(或多个)进程(es)来同步更改。
1、安装(lsyncd基于rsync,且要求rsync >= 3.1):
# 查看rsync版本
# rsync -v

1.1、rsync< 3.1才执行以下内容,rsync >= 3.1跳过1.1此步,直接执行1.2
#查看当前rsync版本
rsync -v
#如果版本太低,直接卸载
yum -y remove rsync
#下载rsync源码
wget http://soft.xiaoz.org/linux/rsync-3.1.3.tar.gz
#解压
tar -zxvf rsync-3.1.3.tar.gz
#进入目录
cd rsync-3.1.3
#编译安装
./configure
make install
最后再次输入rsync -v查看版本是否升级成功
1.2 更新epel源
yum -y install epel-release
1.3安装lsyncd
#安装lsyncd
yum -y install lsyncd
#查看lsyncd版本
lsyncd --version
#配置文件位于/etc/lsyncd.conf -- 是注释符
2、 配置
2.1 配置免密登陆
如果想要将主A:192.168.0.1的数据同步到备B:192.168.0.2,主A:192.168.0.1必须拥有免密码登录备B:192.168.0.2的权限,
可以设置密钥登录来完成。只需要两条命令即可,下面的命令在主A:192.168.0.1服务器执行:
#生成密钥文件
ssh-keygen -t rsa
#将公钥拷贝到B服务器 -p 配置是ssh端口 ,输入密码登陆拷贝
Bssh-copy-id root@192.168.0.2 -p 22000
#测试
ssh root@192.168.0.2 -p 22000
2.2 配置lsyncd
2.2.1 部分参数说明
settings为全局配置,部分参数如下:
logfile:日志文件路径
statusFile:进程路径
insist:继续运行,即使有失败的目标。
statusInterval:多少秒写入文件,默认是10s
sync为同步配置,部分参数如下:
source:本地文件目录
host:远程服务器地址
targetdir:远程目标目录
port:目前主机SSH端口号,默认为22000
2.2.2 配置文件
vi /etc/lsyncd.conf修改配置文件,注释或删除掉默认的最后一行,然后添加自己的配置
settings {
logfile = "/tmp/lsyncd.log",
statusFile = "/tmp/lsyncd.status",
insist = true,
statusInterval = 10
}
sync {
default.rsyncssh, source="/home",
host="192.168.1.2",
targetdir="/home",
rsync = {
archive = true,
compress = false,
whole_file = false
},
ssh = {
port = 220000
}
}
继续输入命令lsyncd -nodaemon /etc/lsyncd.conf运行查看下是否有报错,如果有报错根据报错情况检查修改
如果没有报错直接退出后输入命令:systemctl start lsyncd启动lsyncd即可。
相关命令:
#启动
systemctl start lsyncd
#停止
systemctl stop lsyncd
#重启
systemctl restart lsyncd
#设置开机自动启动
systemctl enable lsyncd
原文链接:https://www.west.cn/faq/list.asp?unid=2511
相关文章:
LINUX系统使用软件异地同步数据(灾备)
rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步 一、宝塔环境: 有宝塔软件商城支持,参考:https://www.bt.cn/bbs/thread-98022-1-1.html 二、…...
IDEA Rogstry中找不到compiler.automake.allow.when.app.running问题解决
网上大部分人教我们 先 File > Settings 然后 勾选 Build 下的 Compiler中的 Build project automatically 这些步骤都不会有问题 然后就会让我们 ctrl shift alt / 点 Rogstry 打开后 我人就麻了 根本没有什么 compiler.automake.allow.when.app.running 也不用慌 我们…...
c#设计模式-行为型模式 之 状态模式
🚀简介 状态模式是一种行为设计模式,它允许对象在其内部状态改变时改变其行为,我们可以通过创建一个状态接口和一些实现了该接口的状态类来实现状态模式。然后,我们可以创建一个上下文类,它会根据其当前的状态对象来改…...
使用Docker安装JupyterHub
安装JupyterHub 拉取Jupyter镜像并运行容器 docker run -d -p 8000:8000 --name jupyterhub jupyterhub/jupyterhub jupyterhub # -d:后台运行 # -p 8000:8000:宿主机的8000端口映射容器中的8000端口 # --name jupyterhub:给运行的容器起名…...
SpringCloudGateway网关整合swagger3+Knife4j3,basePath丢失请求404问题
在集成 Spring Cloud Gateway 网关的时候,会出现没有 basePath 的情况,例如定义的 /jeeplus-auth、/jeeplus-system 等微服务前缀导致访问接口404: maven依赖: swagger2于17年停止维护,现在最新的版本为 Swagger3&am…...
html通过使用图像源的协议(protocol)相对 URL 来防止安全/不安全错误
有人知道使用 protocol relative URLs 是否有问题吗?用于图像源以防止混合内容安全警告。 例如链接一张图片: <img src"//domain.com/img.jpg" /> 代替: <img src"http://domain.com/img.jpg" /> or <img src"https…...
【SpringBoot】| Thymeleaf 模板引擎
目录 Thymeleaf 模板引擎 1. 第一个例子 2. 表达式 ①标准变量表达式 ②选择变量表达式(星号变量表达式) ③链接表达式(URL表达式) 3. Thymeleaf的属性 ①th:action ②th:method ③th:href ④th:src ⑤th:text ⑥th:…...
Vue Router的进阶
进阶 导航守卫 官方文档上面描述的会比较深奥,而守卫类型也比较多,其中包含了全局前置守卫、全局解析守卫、全局后置钩子、路由独享守卫、组件内守卫。每一种守卫的作用和用法都不相同。这会使得大家去学习的时候觉得比较困难,这边主要介绍…...
方案:快递站智能视频监控3大亮点汇总
快递站智能视频监控方案是一种利用先进的技术和设备,来提升快递站安全管理和快递流程监控的解决方案。具体包括哪些方面呢?今天小编就带大家来看看! 1、视频监控系统 在快递站的关键区域安装旭帆科技高清摄像头,如快递仓库、操作…...
Direct3D网格
创建网格 我们可以用D3DXCreateMeshFVF函数创建一个"空"网格对象 ,空网格对象是指我们指定了网格的面片总数和顶点总数,然后由该函数为顶点缓存、索引缓存和属性缓存分配大小合适的内存,之后即可手工填入网格数据。 HRESULT WINA…...
docker安装wiki
1.docker pull mediawiki 2.docker run -d --name mywiki -p 8666:80 mediawiki 访问ip:8666,就可以看到配置页面了 3.docker pull mysql docker run -d --name my-mysql -e MYSQL_ROOT_PASSWORD123456 -p 3307:3306 mysql 4.在配置页面链接ip:3307,连接数据库,接下…...
bigemap在林业勘测规划设计行业的一些应用
选择Bigemap的原因: 主要注重影像的时效性,软件的影像时效性比其他的更新快,更清晰。 使用场景: 1.林业督查,主要是根据国家下发的图斑,结合测绘局的影像以及bigemap的较新影像对比去年和今年的林地变化。…...
设计模式学习
文章目录 前言设计模式的七大原则单一职责原则开放封闭原则里氏替换原则依赖倒转原则接口隔离原则合成复用原则迪米特原则总结 GoF二十三种设计模式创建型模式(五种)结构型模式(七种)行为型模式(十一种) 游…...
Openfire身份认证绕过漏洞
漏洞详情: Openfire是采用Java编程语言开发的实时协作服务器,Openfire的管理控制台是一个基于Web的应用程序,被发现可以使用路径遍历的方式绕过权限校验。未经身份验证的用户可以访问Openfire管理控制台中的后台页面。同时由于Openfire管理控…...
类目体系设计总结
一、背景 公司窗帘产品在做分类调整,从原先二级类目调整为三级类目,相对于平台电商我们的类目层次结构要简单很多(没有定义商品动态属性等),但对于也有上万款SKU的系统来讲,做好基础的分类对于采购、商品促销、数据报…...
gRPC之proto数据验证
1、proto数据验证 本篇将介绍grpc_validator,它可以对gRPC数据的输入和输出进行验证。 这里复用上一篇文章的代码。 1.1 创建proto文件,添加验证规则 这里使用第三方插件go-proto-validators 自动生成验证规则。 地址:https://github.co…...
计算机竞赛 题目: 基于深度学习的疲劳驾驶检测 深度学习
文章目录 0 前言1 课题背景2 实现目标3 当前市面上疲劳驾驶检测的方法4 相关数据集5 基于头部姿态的驾驶疲劳检测5.1 如何确定疲劳状态5.2 算法步骤5.3 打瞌睡判断 6 基于CNN与SVM的疲劳检测方法6.1 网络结构6.2 疲劳图像分类训练6.3 训练结果 7 最后 0 前言 🔥 优…...
css--踩坑
1. 子元素的宽高不生效问题 设置flex布局后,子元素的宽高不生效问题。 如果希望子元素的宽高生效,解决方法,给子元素添加如下属性: flex-shrink: 0; flex-shrink: 0;2. 横向滚动(子元素宽度不固定) /* tab…...
C超市商品信息查询系统
一、系统界面介绍 1. 超市商品信息查询系统 1、显示商品信息,包括:商品名称、商品种类(休闲食品、奶品水饮、生鲜水果)、商品价格、商品保质期、商品生产日期; 2、从文件中导入数据、显示、排序、查询的功能。&…...
黑马JVM总结(二十七)
(1)synchronized代码块 synchronized代码块的底层原理,它是给一个对象进行一个加锁操作,它是如何保证如果你出现了synchronized代码块中出现了问题,它需要给这个对象有一个正确的解锁操作呢,加锁解锁是成对…...
MATLAB与Zemax交互扩展:从API连接到自动化光学设计
1. MATLAB与Zemax交互扩展的核心价值 光学设计工程师们经常面临一个痛点:在Zemax OpticStudio中完成初步设计后,需要进行大量重复性的参数调整和优化。传统的手动操作不仅效率低下,还容易出错。这就是MATLAB与Zemax交互扩展功能的价值所在——…...
告别手动配置:用STM32CubeMX和Arduino库玩转ADS1115与STM32 ADC
告别手动配置:用STM32CubeMX和Arduino库玩转ADS1115与STM32 ADC 在嵌入式开发的世界里,ADC(模数转换器)就像一位不知疲倦的翻译官,将模拟世界的连续信号转换为数字世界能理解的离散数值。然而,传统的寄存器…...
Windows 11 零基础搞定 Coze Studio 本地部署:Docker 配置 + 豆包模型实战
Windows 11 零基础搞定 Coze Studio 本地部署:Docker 配置 豆包模型实战 1. 环境准备与Docker安装 对于Windows 11用户来说,Docker是运行Coze Studio的基础环境。与Linux或macOS不同,Windows平台需要特别注意虚拟化支持和镜像源配置。 硬…...
3步实现风扇智能控制:Windows系统散热与噪音平衡全指南
3步实现风扇智能控制:Windows系统散热与噪音平衡全指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/f…...
Linux内核链表安全遍历:list_for_each_entry_safe 深度解析
1. 为什么需要安全的链表遍历 在Linux内核开发中,链表是最基础也是最常用的数据结构之一。内核开发者经常需要遍历链表来访问或操作其中的节点。但有一个场景特别棘手:当你需要在遍历过程中删除当前节点时,普通的遍历方法会导致链表断裂甚至系…...
避坑指南:ThingsBoard部件开发中5个常见错误与优化方案(附跑马灯Demo代码)
ThingsBoard部件开发实战:5个高频踩坑点与性能优化技巧(含跑马灯完整实现) 最近在技术社区看到不少开发者讨论ThingsBoard部件开发中的"玄学问题"——明明按照文档操作却出现各种诡异现象。作为经历过完整产品开发周期的技术负责人…...
西电B测:基于SystemView的2PSK调制解调全流程仿真解析
1. 2PSK通信系统仿真入门指南 第一次接触SystemView做2PSK仿真时,我也被满屏的波形和参数搞得头晕。后来发现只要抓住几个关键点,这个实验其实比想象中简单得多。2PSK(二进制相移键控)是数字通信中最基础的调制方式之一ÿ…...
鲁棒估计与5点算法求解本质矩阵
发散,无法保证找到全局正确的解。鉴于5点算法的代数复杂性和实现难度(涉及高次多项式求根、病态方程处理等),并且考虑到本系列文章的核心主题是数值优化而非代数几何,我们在此不展开其繁琐的数学推导和代码实现细节。感…...
线程与进程的区别与联系:操作系统入门详解(含 Python 示例)
、先搞懂:进程与线程到底是什么?(通俗类比官方定义) 1.1 生活化类比:快速建立认知 如果把计算机的操作系统比作一个大型工厂: 进程:就是工厂里的一个个独立车间。每个车间有自己专属的生产资…...
ASPP模块的演进与优化:从DeepLab v2到v3+的多尺度语义分割实践
1. 多尺度语义分割的挑战与ASPP的诞生 想象一下你要给一张街景照片中的每个像素分类——哪些是道路、哪些是车辆、哪些是行人。最大的困难是什么?是远处的小车和近处的大卡车可能属于同一类别,但尺寸差异巨大。这就是语义分割中的多尺度问题,…...
