rsync+sersync实时同步数据

2023-05-16

前言

rsync+sersync实时同步数据。

简介

rsync+sersync实时同步数据的原理是在客户端安装sersync监控目录的变化,一般是增删改,检测到变化以后,将变化的文件同步到服务端。

rsync+sersync实时同步数据

实验环境:

服务器:tudou64

客户端:tudou63

服务端tudou64的操作:

1.安装完rsync后修改服务端tudou64的rsyncd的配置文件

[root@tudou64 web-bak]# yum -y install rsync

[root@tudou64 web-bak]# vim /etc/rsyncd.conf

uid = root #运行进程的身份。

gid = root #运行进程的组。

address =192.168.130.64 #监听 IP。

port =873 #监听端口。

hosts allow =* #用*表示所 有

use chroot = yes #是否囚牢,锁定家目录,rsync 被黑之后,黑客无法再 rsync 运行的家目录之外创建文件,选项设置为 yes。

max connections =5 #最大连接数。

pid file =/var/run/rsyncd.pid #进程 PID,自动生成。

lock file =/var/run/rsync.lock #指 max connectios 参数的锁文件。

log file =/var/log/rsyncd.log #日志文件位置。

motd file =/etc/rsyncd.motd #客户端登陆之后弹出的消息,需要创建。

[wwwroot] #共享模块名称。

path =/web-back/ #路径。

comment = used for web-data root #描述。

read only = false #只读权限为假。

list = yes #是否允许查看模块信息。

auth users = rsyncuser #备份的用户,和系统用户无关。

secrets file =/etc/rsync.passwd #存放用户的密码文件,格式是 用户名:密码。

2.创建登陆提示文件和密码文件

[root@tudou64 web-bak]# echo “Welcome to Backup Server” > /etc/rsync.motd

[root@tudou64 web-bak]# echo “rsyncuser:123456” > /etc/rsync.passwd

3.修改密码文件权限(这个很重要)

[root@tudou64 web-bak]# chmod 600 /etc/rsync.passwd

4.启动rsyncd服务

[root@tudou64 web-bak]# systemctl start rsyncd && systemctl enable rsyncd
[root@tudou64 web-bak]# netstat -antpu |grep 873
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 3114/rsync
tcp6 0 0 :::873 ::😗 LISTEN 3114/rsync

客户端tudou63的操作:

1.下载sersync并安装sersync

[root@tudou63 ~]#wget https://sersync.googlecode.com/files/sersync2.5.4_64bit_binary_stable_final.tar.gz

[root@tudou63 ~]# tar -xf sersync2.5.4_64bit_binary_stable_final.tar.gz

[root@tudou63 ~]# mv ./GNU-Linux-x86/ ./sersync

[root@tudou63 ~]# mv sersync /opt/

2.创建rsyncd的密码文件

[root@tudou63 html]# echo 123456 > /etc/rsync.passwd

3.修改密码文件权限(这个很重要)

[root@tudou63 html]#chmod 600 /etc/rsync.passwd

4.修改sersync的配置文件

[root@tudou63 sersync]# cp confxml.xml{,.bak}

[root@tudou63 sersync]# vim confxml.xml

#修改配置文件中的 24–28 行,sersync 模块部分





#修改 31–34 行,rsync 密码认证部分





在这里插入图片描述

注:

根据tudou64服务端的配置更改tudou63客户端sersync的配置文件

5.启动sersync监控并备份/var/www/html目录

[root@tudou63 ~]# /opt/sersync/sersync2 -d -r -o /opt/sersync/confxml.xml

[root@tudou63 html]# vim /root/webbackup.sh
#!/bin/bash
rsync -avz /var/www/html/ rsyncuser@192.168.130.64::wwwroot --password-file=/etc/rsync.passwd

在这里插入图片描述

6.编写sersync监控自动开机启动脚本

[root@tudou63 ~]# vim /opt/check-sersync.sh

#!/bin/sh
sersync="/opt/sersync/sersync2"
confxml="/opt/sersync/confxml.xml"
status=$(ps aux |grep ‘sersync2’|grep -v ‘grep’|wc -l)
if [ $status -eq 0 ];
then
$sersync -d -r -o $confxml &
else
exit 0;
fi

[root@tudou63 ~]# chmod +x /opt/check-sersync.sh

[root@tudou63 ~]# echo “sh /opt/check-sersync.sh” >> /etc/rc.d/rc.local

总结

需要注意的 2 点:

  1. 密码文件一定要加600的权限。

  2. 服务端的配置文件不要出错。

  3. sersync的配置文件需要根据服务端进行配置。

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

rsync+sersync实时同步数据 的相关文章

随机推荐

  • 使用RT-Thread studio(RT-Thread4.0.3)的PWM功能(STM32F103的PA15口)步骤

    打开PWM组件 修改board h的宏 这里注意移植的时候要将HAL TIM Base MspInit函数名改为HAL TIM PWM MspInit 修改board c xff0c 在文件最后增加以下内容 xff08 因为用的是PA15所
  • MCGS的Modbus RTU设备配置 采集优化一定要不优化,否则没有通信数据

  • 学习egg.js,看这一篇就够了!

    egg 介绍 egg 是什么 xff1f egg 是阿里出品的一款 node js 后端 web 框架 xff0c 基于 koa 封装 xff0c 并做了一些约定 为什么叫 egg xff1f egg 有孕育的含义 xff0c 因为 egg
  • 说说家乡的互联网-江西龙南

    刚好在CSDN查资料 xff0c 看到这个征文 xff0c 勾起年少回忆 xff0c 遂写下此文 2003年 xff0c 我刚上初一 xff0c 学校开设了微机课 xff0c 我第一次接触了互联网 十一 xff0c 二岁的孩子对新事物充满了
  • 关于springmvc拦截器不拦截jsp页面

    一 xff0c 拦截器的用法 编写拦截器类 继承HandlerInterceptorAdapter类并重写需要的方法 或实现HandlerInterceptor接口并实现所有方法在spring mvc xml 也就是springmvc的配置
  • docker内部运行systemctl命令失败问题

    一般会提示以下错误 Failed to get D Bus connection Operation not permitted 网上好多解决方式都是说要在docker run的时候加 privileged参数 xff0c 但是本人经过测试
  • 在jupyter notebook导入tensorflow出错 - No module named tensorflow

    环境 xff1a win10 43 anaconda 问题 xff1a 在运行Jupyter Noterbook中import tensorflow报错 解决方法 xff1a 先按照这边文章Win10 Tensorflow2安装 xff0c
  • 手把手教你用Hexo+(Coding/GitHub)搭建个人博客及绑定私有域名

    Hexo是一个开源的静态博客框架 xff0c 支持markdown文档 xff0c 应用起来很方便而且有丰富的主题模板可供选择 xff0c 是建立个性化的个人博客的不二之选 以下以Coding 43 hexo为例搭建个人博客 因为GitHu
  • python 读写文件 删除文件

    概述 xff1a 主要内容 python read write 删除文件写 xff1b 在 39 w 39 和 39 a 39 模式下 xff0c 如果你打开的文件不存在 xff0c 那么open 函数会自动帮你创建一个 1 写入和读取文件
  • 看完微信抢红包算法你就明白,为啥你不是手气最佳

    摘要 xff1a 今天我们就来分析一下抢红包的算法 xff0c 其中有一些是微信红包的算法 xff0c 看完你就知道手气最佳是如何产生的啦 本文分享自华为云社区 为啥春节抢红包总不是手气最佳 xff1f 看完微信抢红包算法你就明白了 xff
  • python读音播报-基于python GUI开发的点名小程序(语音播报)

    实现名单轮播 点名 语音播报功能 coding utf8 ProjectName python3 FileName name Author shuxiaying Date 2020 7 9 Description import dateti
  • python编程100个小程序-整理了适合新手的20个Python练手小程序

    即刻关注公众号 xff0c 发现世界的美好 100个Python练手小程序 xff0c 学习python的很好的资料 xff0c 覆盖了python中的每一部分 xff0c 可以边学习边练习 xff0c 更容易掌握python 程序1 题目
  • python编程入门书籍-最适合Python初学者的6本书籍推荐「必须收藏」

    原标题 xff1a 最适合Python初学者的6本书籍推荐 必须收藏 Python是一种通用的解释型编程 xff0c 主要用于Web开发 机器学习和复杂数据分析 Python对初学者来说是一种完美的语言 xff0c 因为它易于学习和理解 x
  • dubbo好书推荐

    为了自己的进步 xff0c 也为了能够帮助其他人 xff0c 我决定开始写一些东西 xff0c 网上有很多学习资料 xff0c 自己的功力未必到家 xff0c 所以大家共同进步吧 xff01 站在巨人的肩膀上看得远 xff0c 现在推荐一本
  • linux升级java的jdk版本

    这里以升级jdk 8u231 linux x64 rpm为示例 安装 xff0c rpm ivh jdk 8u161 linux x64 rpmrpm pql root jdk 8u161 linux x64 rpm 通过查看 jdk 的信
  • you-get简明使用教程

    前言 近期 xff0c 想要下载哔哩哔哩等网站的视频 xff0c 网上查了一下you get的使用教程和视频 xff0c 有些特别简单 xff0c 说的不求甚解 xff0c 有些讲的太过繁琐 xff0c 所以 xff0c 打算自己写一个简单
  • linux分区扩容(非lvm)

    前言 最近 xff0c 在使用linux中中 xff0c 对于分区空间不够使用的情况下 xff0c 如果是使用lvm的分区 xff0c 是可以使用lvm扩容的 xff0c 流程大概是 xff1a 新加磁盘 将新加的磁盘创建成pv 将新加的p
  • linux关闭virbr0网卡

    前言 最近 xff0c 在使用linux时 要求需要关闭virbr0的网卡 xff0c 网上查了一下virbr0是kvm虚拟机使用的网卡 xff0c 是libvirtd服务安装后 xff0c 自动生成的 xff0c virbr0的配置文件位
  • rsync定时备份数据

    前言 rsync定时备份数据 简介 使用非系统用户备份数据192 168 130 63的 var www html 目录到192 168 130 64的 web bak目录 rsync定时备份数据 实验环境 xff1a 服务器 xff1a
  • rsync+sersync实时同步数据

    前言 rsync 43 sersync实时同步数据 简介 rsync 43 sersync实时同步数据的原理是在客户端安装sersync监控目录的变化 xff0c 一般是增删改 xff0c 检测到变化以后 xff0c 将变化的文件同步到服务