返回顶部
首页 > 资讯 > 操作系统 >Linux数据实时同步(sersync+rsync)
  • 473
分享到

Linux数据实时同步(sersync+rsync)

Linux数据同步Rsync 2023-05-16 14:05:40 473人浏览 佚名
摘要

需求:由于单台服务器存储着所有的文件,为了防止服务器故障导致文件丢失或者损坏,先将Master(175)/var/ftp/pub/的目录文件实时备份到Slave(176)/backup/目录下。环境:说明:Rsync可以远程同步,支持本地复

需求:由于单台服务器存储着所有的文件,为了防止服务器故障导致文件丢失或者损坏,先将Master(175)/var/ftp/pub/的目录文件实时备份到Slave(176)/backup/目录下。

环境:

说明:

Rsync可以远程同步,支持本地复制,实时同步需要借助第三方工具sersync/inotify

Sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或者某一个目录的名字,然后使用rsync同步的时候

Inotify只能记录下被监听的目录发生了变化(增,删,改)并没有把具体是哪个文件或者哪个目录发生了变化记录下来

步骤:

一、Slave服务器配置

1.在Slave服务器上安装Rsync

[root@slave ~]# yum -y install rsync

2.在Slave服务器上配置rsync

[root@slave ~]# vim /etc/rsyncd.conf
uid = root
gid = root
use chroot = no
max connections = 36000
timeout = 600
pid file =/var/run/rsyncd.pid
lock file =/var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors = no
read only = no
list = no
hosts allow = 192.168.1.175
hosts deny = *
auth users = rsync_backup
secrets file =/etc/rsync.passWord
[backup]
path = /backup/sersync/

# 配置注解:
# uid:指定传输文件时的用户
# gid:指定传输文件时的组
# use chroot true|false:表示在传输文件前首先chroot到path参数所指定的目录下,可以实现安全防护,但缺点是需要以root权限,并且不能备份指向外部的符号连接所指向的目录文件,默认情况下chroot值为true
# max connections:指定最大的连接数,默认是0,即没有限制
# read only ture|false:如果为true,则不能上传到该模块指定的路径下
# list:表示当用户查询该服务器上的可用模块时,该模块是否被列出,true为列出,false为隐藏
# auth users:指定传输时要使用的用户名
# secrets file:指定密码文件,注意该密码文件的权限一定要是600,格式:用户名:密码
# hosts allow:是允许同步的主机,可以是IP或者网段,如果是多个中间用空格隔开
# hosts deny:拒绝同步的主机,可以是IP或者网段,如果是多个中间用空格隔开
# [backup]:同步的模块名
# path:同步的路径

3.创建同步的用户与密码的文件

即rsyncd.conf中secrets file这个配置选项中的文件/etc/rsync.passwd,同进要设置rsync.password的权限为600

[root@slave ~]# echo "rsync_backup:123456" >/etc/rsync.password
[root@slave ~]# chmod 600 /etc/rsync.password

4.创建同步的目录

即rsyncd.conf中path配置选项中的目录

[root@slave ~]# mkdir -p /backup/sersync

5.启动守护进程,并写入开机自启动

[root@slave ~]# rsync --daemon --config=/etc/rsyncd.conf 
[root@slave ~]# echo "rsync --daemon --config=/etc/rsyncd.conf" >>/etc/rc.local
[root@slave ~]# chmod +x /etc/rc.d/rc.local
[root@slave ~]# tail -1 /etc/rc.local
[root@slave ~]# reboot
[root@slave ~]# systemctl status rc-local.service
[root@slave ~]# netstat -ntlp | grep rsync

二、Master服务器配置

1.在Master安装rsync

[root@master ~]# yum -y install rsync

2.首先创建master端的密码验证文件,同进要设置rsync.password的权限为600

[root@master ~]# echo 50000000 >/proc/sys/fs/inotify/max_user_watches
[root@master ~]# echo 327679 >/proc/sys/fs/inotify/max_queued_events
[root@master ~]# echo "123456" >/etc/rsync.password
[root@master ~]# chmod 600 /etc/rsync.password

3.测试rsync

[root@master ~]# rsync -avzP /var/ftp/pub/sersync/ rsync_backup@192.168.1.176::backup --password-file=/etc/rsync.password

4.部署sersync,下载地址

[root@master ~]# mkdir /usr/local/sersync/
[root@master ~]# mkdir /usr/local/sersync/bin
[root@master ~]# mkdir /usr/local/sersync/conf
[root@master ~]# mkdir /usr/local/sersync/logs
[root@master sersync]# wget https://raw.GitHubusercontent.com/orangle/sersync/master/release/sersync2.5.4_64bit_binary_stable_final.tar.gz
[root@master sersync]# tar xvf sersync2.5.4_64bit_binary_stable_final.tar.gz
[root@master sersync]# mv GNU-linux-x86/sersync2 ./bin/sersync
[root@master sersync]# mv GNU-Linux-x86/confxml.xml ./conf/
[root@master conf]# cp confxml.xml confxml.xml.bak
[root@master sersync]# tree sersync

5.修改config.xml文件,建议拷贝一份在修改,需要把监控的目录数据同步到master指定的模块下,前面写了slave的模块名是backup对应的目录是:/backup/

[root@master sersync]# vim conf/confxml.xml
# 如果系统linux7以上,需要将xfs="false"修改成xfs="true",否则sersync无法递归监控
<fileSystem xfs="true"/>
<localpath watch="/var/ftp/pub/sersync">
	<remote ip="192.168.1.176" name="backup"/>
</localpath>
# 指定rsync的虚拟用户和密码文件路径
<rsync>
	<commonParams params="-artuz"/>
	<auth start="true" users="rsync_backup" passwordfile="/etc/rsync.password"/>
	<userDefinedPort start="false" port="874"/><!-- port=874 -->
	<timeout start="false" time="100"/><!-- timeout=100 -->
	<ssh start="false"/>
</rsync>
[root@master sersync]# echo "export PATH=$PATH:/usr/local/sersync/bin/" >>/etc/profile
[root@master sersync]# source /etc/profile
[root@master sersync]# which sersync

6.启动sersync

[root@master sersync]# bin/sersync -d -r -o /usr/local/sersync/conf/confxml.xml
# 参数注解:
# -d:启用守护进程模式
# -r:在监控前,将监控目录与远程主机用rsync命令推送一遍
# -o:指定配置文件,默认使用confxml.xml文件

7.测试同步,在master服务器需要同步的目录下创建文件及目录

[root@master sersync]# cd /var/ftp/pub/sersync/
[root@master sersync]# touch {1..100}
[root@master sersync]# mkdir note
[root@slave backup]# ls

8.加入开机启动项,重启服务器查看

[root@master ~]# ln -s  /usr/local/sersync/bin/sersync /usr/local/bin/sersync
[root@master ~]# echo "sersync -d -r -o /usr/local/sersync/conf/confxml.xml" >>/etc/rc.local
[root@master ~]# chmod +x /etc/rc.d/rc.local
[root@master ~]# systemctl status rc-local.service
[root@master ~]# tail -1 /etc/rc.local
[root@slave ~]# reboot

9.加入开机启动后测试同步,在master增加、删除、修改文件及目录,查看slave是否实时同步

[root@master sersync]# cd /var/ftp/pub/sersync/
[root@master sersync]# touch {1..100}
[root@master sersync]# mkdir note
[root@master sersync]# rm -rf ./*
[root@slave backup]# ls


--结束END--

本文标题: Linux数据实时同步(sersync+rsync)

本文链接: https://lsjlt.com/news/209904.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Linux数据实时同步(sersync+rsync)
    需求:由于单台服务器存储着所有的文件,为了防止服务器故障导致文件丢失或者损坏,先将Master(175)/var/ftp/pub/的目录文件实时备份到Slave(176)/backup/目录下。环境:说明:Rsync可以远程同步,支持本地复...
    99+
    2023-05-16
    Linux 数据同步 Rsync
  • rsync实时同步
    与传统的cp、tar备份方式相比,rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等。192.168.0.1 源服...
    99+
    2023-06-05
  • rsync远程同步(定期同步,实时同步实战!)
    本章结构 1.rsync同步简介2.配置rsync备份源3.rsync命令基本用法4.rsync备份操作示例5.rsync+inotify结合使用 关于rsync . 一款快速增量备份工具 1.Rem...
    99+
    2024-04-02
  • Linux数据同步工具rsync怎么用
    这篇文章主要讲解了“Linux数据同步工具rsync怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux数据同步工具rsync怎么用”吧!讲解 rsync 用法之前,为了让大家对此...
    99+
    2023-06-27
  • Linux 通过Rsync+Inotify实现本、异地远程数据实时同步功能
    0x0 测试环境 总部生产服务器与分部备份服务器要求实现异地数据备份,环境如下 **centos 6.5** 生产服务器目录: /home/zytest/files 备份服务器目录: /home/zytest/fi...
    99+
    2022-06-03
    rsync+inotify实现远程实时同步 linux 远程数据同步
  • python rsync 数据同步脚本
    #!/usr/bin/env python # -*- coding: utf-8 -*- import pexpect import time import traceback def doRsync(user,passwd,ip,s...
    99+
    2023-01-31
    脚本 数据同步 python
  • Linux利用inotify和rsync服务实现数据实时同步的原理解析
    目录文件定时同步的实现:文件实时同步的实现:inotifyinotify-tools包主要工具:inotifywait 命令:rsync工具rsync有三种工作方式:两种方式实现rsync服务器方式一:通过rsync守护...
    99+
    2024-04-02
  • linux rsync同步命令介绍
    这篇文章主要介绍“linux rsync同步命令介绍”,在日常操作中,相信很多人在linux rsync同步命令介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux rsync同步命令介绍”的疑惑有所...
    99+
    2023-06-09
  • linux rsync同步命令(值得收藏)
    如果你是一位运维工程师,你很可能会面对几十台、几百台甚至上千台服务器,除了批量操作外,环境同步、数据同步也是必不可少的技能。 说到“同步”,不得不提的利器就是rsync,今天就来说说我从这个工具中看到的同...
    99+
    2022-06-04
    命令 收藏 linux
  • Linux中rsync同步工具怎么用
    这篇文章给大家分享的是有关Linux中rsync同步工具怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户...
    99+
    2023-06-16
  • Linux文件同步rsync是怎样的
    这篇文章将为大家详细讲解有关Linux文件同步rsync是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。rsync是Linux系统下的文件同步和数据传输工具,它采用“rsync”算法,...
    99+
    2023-06-28
  • clickhouse实时同步MySQL数据
    两种方式         1、使用clickhouse表引擎,直接从MySQL中读取数据(针对表),如果业务需求不是很复杂,可以选择此方式,需要哪张表就配置哪张表,操作简单,数据实时同步;         2、使用clickhouse数据库...
    99+
    2023-09-02
    mysql clickhouse 数据库
  • Mysql数据实时同步实践
    关于小米内部使用的数据库你知道多少?背景Mysql由于自身简单、高效、可靠的特点,成为小米内部使用最广泛的数据库,但是当数据量达到千万/亿级别的时候,mysql的相关操作会变的非常迟缓;如果这时还有实时BI...
    99+
    2024-04-02
  • Rsync如何实现文件同步
    这篇文章主要介绍“Rsync如何实现文件同步”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Rsync如何实现文件同步”文章能帮助大家解决问题。rsync的目的是实现本地主机和远程主机上的文件同步(包...
    99+
    2023-06-27
  • Linux服务器与群晖rsync同步,linux服务器通过rsync的方式备份数据到群晖
     一、linux配置 准备需要备份linux服务器的配置,安装rsync即可 yum install rsync -y rsync -version 二、准备rsync环境 登录群晖服务器,点击套件中心  2.点击红色框框,跳转到套件...
    99+
    2023-09-24
    linux centos 运维
  • Linux中使用数据备份同步工具Rsync的操作方法
    Linux中使用数据备份同步工具Rsync的操作方法,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。对于运维人员来说,数据备份是最重要的工作之一,rsync就是一款通过网络备...
    99+
    2023-06-12
  • MySQL 到Oracle 实时数据同步
    目录第一步:配置MySQL 连接第二步:配置 Oracle连接第四步:进行数据校验其他数据库的同步操作摘要:很多 DBA 同学经常会遇到要从一个数据库实时同步到另一个数据库的问题,同...
    99+
    2024-04-02
  • rsync+inotify如何实现多台web数据动态同步操作
    这篇文章主要介绍了rsync+inotify如何实现多台web数据动态同步操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。*背景:由于无存储共享设备,web集群中的代码均存...
    99+
    2023-06-13
  • 怎么用Linux系统中的rsync实现文件同步
    这篇文章主要介绍了怎么用Linux系统中的rsync实现文件同步的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Linux系统中的rsync实现文件同步文章都会有所收获,下面我们一起来看看吧。在Linux系...
    99+
    2023-06-28
  • linux 中怎么利用rsync实现文件增量同步
    这篇文章给大家介绍linux 中怎么利用rsync实现文件增量同步,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、系统环境:更新源服务器:192.0.2.20目的服务器:192.0.2.21  二...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作