首页 > 其他分享 >rsync远程同步:下行同步、上行同步+inotify实时同步

rsync远程同步:下行同步、上行同步+inotify实时同步

时间:2023-04-03 23:58:24浏览次数:48  
标签:rsync 同步 inotify 备份 etc rsyncd var

一、rsync远程同步

1.什么是rsync远程同步

rsync是CS架构的数据镜像备份工具,可以实现全量备份和快速增量备份支持本地复制或ssh、rsync主机同步。rsync默认端口为 873

rsync特性:可以在不通主机之间镜像同步整个目录树,支持增量备份、保持链接和权限、时间、属性且传输前自动执行压缩、rsync不需要特殊权限即可安装,centos系统默认安装,支持匿名传输,注意发起端要有对应目录位置的读权限。

2. rsync备份类型

完全备份:每次备份将备份源所有文件或目录备份到目的。

差量备份:备份上次完全备份以后有变化的数据。

增量备份:备份上次完全备份以后有变化的数据。

 

 

 

 

 

 

二、rsync下行同步实验部署

1. 实验环境

192.168.50.200:客户端

192.168.50.150:服务端

关闭防火墙,安全防护模块

2. 实验流程

①修改配置文件

 

 1 rpm -q rsync   #检测rsync是否安装,一般系统已默认安装rsync
 2 rpm -qc rsync  #查看配置文件在什么地方
 3 cp /etc/rsyncd.conf /etc/rsyncd.conf_bak   
 4 #备份配置文件,便于回滚还原
 5 vim /etc/rsyncd.conf    #建立/etc/rsyncd.conf配置文件
 6 Uid = root     #用户id,注意不用root使用rsync同步时可能会报错
7 Gid = root #组id,注意不用root使用rsync同步时可能会报错
8 Use chroot = yes #禁锢在源目录
 9 Address = 192.168.50.150  #监听地址
10 Port 873  #监听端口  tcp/udp  端口可通过cat /etc/services | grep rsync 查看
11 Log file = /var/log/rsyncd.log   #日志文件位置
12 Pid file = /var/run/rsyncd.pig   #存放进程id的文件位置
13 Hosts allow = 192.168.50.0/24  #允许访问的客户机地址
14 Dont compress = *.gz *.bz2 *.tgz *.zip *.rar *.z  #同步时不在压缩的文件类型
15 
16 [myhtml]   #共享模块名称
17 Path = /var/www/html   #源目录的实际路径
18 Comment = this is rsync of www.kgc.com  #解释说明
19 Read only = yes   #是否为只读
20 Auth users = daiwei       #授权账户,多个账号以空格分隔
21 Secrets file = /etc/rsyncd_users.db   #存放账户信息的数据文件
22 #如采用匿名的方式,只要将其中的“auth users”和“secrets file”
23 配置项去掉即可
24 
25 mkdir -p /var/www/html  #创建目录
26 ls -ld /var/www/html/   #查看权限
27 #如果没有读权限需要加上读权限
28 Chmod +r /var/www/html/
29 
30 vim /etc/rsyncd_users.db
31 Daiwei:123456   #无需建立同名系统用户
32 Chmod 600 /etc/rsyncd_users.db   
33 #设置权限,保证所以用户对源目录/var/www/html都有读取权限
34 rsync --daemon   #启动rsync服务,以独立监听服务的方式运行
35 netstat -antp |grep rsync 
36 #关闭rsync服务使用kill命令, kill 进程号,cat /var/run/rsyncd.pid查看进程号;或rm -rf /var/wrun/rsyncd.pid

 

 

 

 

②进入客户端(发起端200),同步数据

 

1 mkdir /opt/ky26   #创建文件ky26
2 rsync -avz [email protected]::myhtml /opt/ky26 
3 #将模块下载到本地的ky26 ,密码:123456

 

 

 

③进入服务端

将/etc/passwd  /etc/shadow拷贝到/var/www/html目录下

 

 

 

 

 

④进入客户端查看数据是否变更,如下图,数据已变更

 

 

 

 

⑤在服务端/var/www/html目录下修该用户信息文件,在尾

 

行插入一条zhangsan的信息,客户端也会同步

 

 

 

 

 

 

 

设置免交互密码,只给当前用户使用,其他用户无法使用

 

 

 

 

 

 

 

服务端删除数据,客户端若要同步需要加--delete命令

 

 

 

 

 

 

实时备份

 

设置每天十点半备份

 

 

 

补充配置源的表达方式

 

rysnc -avz -e ‘ssh -p ssh的端口号’ 原始位置 目标位置

 

服务端添加信息

 

 

 

客户端同步信息

 

 

 

标签:rsync,同步,inotify,备份,etc,rsyncd,var
From: https://www.cnblogs.com/daiwei-123/p/17284965.html

相关文章

  • 关系数据库同步框架 Dotmim.Sync
    推荐一款在线+离线数据同步框架Dotmim.Sync 移动智能应用可以分为在线模式、纯离线模式与“在线+离线”混合模式。在线模式下系统数据一般存储在服务器端的大中型数据库(如SQLServer、Oracle、MySQL等),移动应用依赖于稳定可靠的网络连接;纯离线模式下系统数据一般存储在移......
  • 多线程同步与安全
    三大不安全线程//模拟不安全的买票publicclassTestBuyTicket{  publicstaticvoidmain(String[]args){    maiPiaomaiPiao=newmaiPiao();​    newThread(maiPiao,"小明").start();    newThread(maiPiao,"小红").start();    ne......
  • 阿里云RDS与ECS自建mysql数据库主从同步(GTID方式)
      1、GTID的概念全局事务标识:globaltransactionidentifiers;GTID是一个事务一一对应,并且全局唯一ID;一个GTID在一个服务器上只执行一次,避免重复执行导致数据混乱或者主从不一致;GTID用来代替传统复制方法,不再使用MASTER_LOG_FILE+MASTER_LOG_POS开启复制。而是使用MASTER_AUT......
  • git远程分支与本地分支同步
    1.先执行gitfetch2.再执行gitcheckout分支名查看所有本地分支gitbranch查看所有远程分支gitbranch-r查看远程分支和本地分支的关联关系的命令gitremoteshoworigin命令解析gitremoteshoworigin命令会显示与名为origin的远程代码库相关的信息,包括远......
  • rsync远程同步实验
     配置源服务器   systemctlstopfirewalld setenforce0rpm-qrsync#一般系统已默认安装rsync#建立/etc/rsyncd.conf配置文件vim/etc/rsyncd.conf#添加以下配置项uid=root......
  • 编程里同步和异步的选择
    同步是指方法调用后必须等到返回才会执行后续代码异步是方法调用没等到返回也可以继续执行后续代码在java中如果是多线程,而各线程间会公用一个变量时,需要使用同步来保证线程安全,否则异步就是最好的在前端js中,一般http请求都是默认异步的,允许在发送http请求时执行其他函数,这样......
  • C# 后台服务监控SQL Server数据库表改动并同步到MySQL数据库表
    需求将A服务器的sqlserver数据库item_mst表的数据同步到MySQL数据库Part表监控Item_mst表中item,description,overview的更改并同步到MySQL数据库 针对需求一,基本就是执行一次,单独写了个winform用来做这事针对需求二,写了个Windowsserviceapp Nuget安装 Dapper就是个ormSeril......
  • 状态同步、帧同步的实践入门
    写在前面在接触网络同步设计时,必然会看到“状态同步”、“帧同步”这俩概念,虽然有百科解释、书、诸多博客、手头工作项目可以参考,但真正走到“开始理解”这一步前,我脑子里常冒出一些问号“看了好几回百科好像和没看一样”,“博客的资料就一定是准确的吗”,“工作项目用的必然经过......
  • 16 同步与互斥(二) 内联汇编
    汇编参考GCC工具链使用1引入内联汇编即在C函数中使用汇编去实现某些功能。为什么需要在C代码中引入汇编?C语言在大多数的时候效率都很高,但在某些情况下直接使用汇编效率会更加高效部分功能通过C语言很难实现,这部分代码就需要使用汇编去实现(实现某些功能)在C文件中使用汇编......
  • MySQL多源同步
    1、简介MySQL5.7的发布,在复制方面有了很大的改进,比如开始支持多源复制(multi-source)了。以及真正的支持多线程复制了。需要说明一点的是,多源复制可以使用基于二进制日志的复制或者基于事务的复制。下面开始配置基于二进制日志的多源复制。2、复制模式一主一从一主多从级联复制Mu......