Linux系统下数据同步服务RSYNC
创始人
2024-09-26 07:46:36
0

目录

一、rsync概述

1.什么是rsync

2.rsync的特点

3.rsync与scp的区别

二、rsync的使用

1.安装rsync

2.本地文件同步

3.远程文件同步

4.同步服务器设置

5.自动化推送拉取文件

三、rsync扩展

1.为rsync服务添加密码

2.rsync结合inotify工具实现代码实时同步


一、rsync概述

1.什么是rsync

● sync同步:刷新文件系统缓存,强制将修改过的数据块写入磁盘,并且更新超级块。

保存目标文件 => 强制把缓存中的数据写入磁盘(立即保存)

适应于实时性比较高的场景

● async异步:将数据先放到缓存区,再周期性(一般是30s)的去同步到磁盘。

保存目标文件 => 将数据放到缓冲区,再周期性同步到磁盘

适用于大批量数据同步场景

● rsync远程同步:(路由)==remote synchronous==

2.rsync的特点

● 可以镜像保存整个目录树和文件系统

● 可以保留原有的权限(permission,mode),owner,group,时间(修改时间,modify time),软硬

链接,文件acl,文件属性(attributes)信息等

● 传输效率高

● 支持匿名传输,方便网站镜像;也可以做验证,加强安全

3.rsync与scp的区别

两者都可以实现远程同步,但是相比而言,rsync能⼒更强

① 支持增量备份

② 数据同步时保持文件的原有属性

二、rsync的使用

基本语法:rsync -[选项] 文件原位置 文件要同步的位置

1.安装rsync
 yum -y install rsync
2.本地文件同步

案例1:在家目录中创建一些文件,将文件同步到opt下

第一步:在家目录创建文件

mkdir folder/f{1..3}   #创建三个目录 tree folder/    #可提前安装好tree,命令:yum -y install tree 
touch folder/f1/file{0..4}   #在f1目录下创建5个文件

第二步:将folder目录下的文件传到opt

rsync -av folder/ /opt/

使用tree查看/opt/目录,可以看到文件是传过去了的

第三步:将folder整个目录传过去

rsync -av folder /opt/

案例2:rsync -R选项的应⽤(保留相对路径)

#为了方便,可将/opt/目录下的文件删除(有重要文件谨慎删除) rm -rf /opt/* ls -l /opt/  #使用-R选项 rsync -avR folder/ /opt/

案例3:rsync --delete(删除目标录⾥多余的文件)

rm -rf folder/f1/file0 tree folder/ 

 rsync -av --delete folder/f1/ folder/f2/  #将f1下删除的文件同步到f2

案例4:实现向文件中增加内容、修改文件属性的同步

在f1下的file1文件中增加内容“哈喽哈喽~大家好!”,查看file1文件内容,同时查看f2下的file1文件里面并没有任何内容

vim folder/f1/file1 cat folder/f1/file1 cat folder/f2/file1 

同步两个文件,并查看发现f2的file1文件也出现内容“哈喽哈喽~大家好!”

 rsync -av --delete folder/f1/ folder/f2/

touch folder/f1/fil0 -m -d "2024-7-14 00:00"   #创建一个文件 rsync -av --delete folder/f1/ folder/f2/ touch folder/f1/fil0 -m -d "2024-7-13 00:00"   #修改时间 rsync -av --delete folder/f1/ folder/f2/ 

chmod g+w folder/f1/fil0    #增加值为2的w写权限 rsync -av --delete folder/f1/ folder/f2/ ls -l folder/f2/fil0
3.远程文件同步

需要两台主机,都必须安装rsync(yum -y install rsync)

主机1向主机2的/tmp/同步

rsync -av folder/ root@192.168.1.20:/tmp/

主机2查看:

免密传输:主机1创建一个300M的文件

dd if=/dev/zero of=/tmp/lajiwenjian bs=300M count=1

生成密钥

ssh-copy-id root@192.168.1.20

主机2:

 rsync -av root@192.168.1.21:/tmp/lajiwenjian /tmp/
4.同步服务器设置

1.查看rsync服务状态,发现是关闭的

systemctl status rsyncd

2.开启rsync服务

systemctl start rsyncd

3.查看服务是否开启,发现使用了873端口

netstat -lntup | grep rsync

4.找到服务的配置文件

find / -name "rsync*conf"

配置文件说明:

5.创建多级目录文件,修改/etc/rsyncd.conf文件

mkdir -p /app/studentweb/src/main/java/co/goho/qingtang.studentweb/ tree /app/ cd /app/studentweb vim /etc/rsyncd.conf

6.重启rsyncd服务 

systemctl restart rsyncd

在另一个主机测试:

rsync -a root@192.168.1.21::

rsync -ac root@192.168.1.21::app /tmp/

 使用tree查看

5.自动化推送拉取文件

使用计划任务,每一分钟推送一次

crontab -e

三、rsync扩展

1.为rsync服务添加密码

编辑vim /etc/rsyncd.conf,添加账号和密码文件的路径

vim /etc/rsyncd.conf

 

创建编辑密码,账号:密码

vim /etc/rsync.secrets

给/etc/secrets文件添加权限,600权限

重启rsyncd服务

systemctl restart rsyncd

另一台主机:

rsync -av jerry@192.168.1.21::app /tmp/

2.rsync结合inotify工具实现代码实时同步

1.直接安装inotify-tools

监听指定目录,一旦目录发生修改,就执行指定的指令

yum -y install inotify-tools

inotify作用就是监听,安装完之后会有以下两个命令

inotifywait   等待

inotifywatch   看守

选项含义:

监控/app/目录 

inotifywait -mr /app/

一旦inotify监听到目录中的改变,就直接推送

2.编写脚本

vim inotifytest.sh

3.修改权限

chmod 700 inotifytest.sh

4.执行inotifytest.sh文件

[root@localhost ~]# ./inotifytest.sh sh

5.再开一个终端,在/app/studentweb/目录下创建文件

vim /app/studentweb/hh.txt   #里面随便写点东西,保存退出

返回监控端查看,是会有目录改变的推送

相关内容

热门资讯

笔记本xp系统安装安卓系统,轻... 你有没有想过,在你的老式笔记本上安装一个全新的操作系统呢?想象那台陪伴你多年的老笔记本,突然焕发出青...
安卓操作系统吃内存,安卓操作系... 手机里的安卓操作系统是不是让你感觉内存越来越不够用了?别急,今天就来给你好好分析分析这个让人头疼的问...
王者号ios系统怎么转安卓系统... 你是不是也和我一样,对王者荣耀这款游戏爱得深沉呢?尤其是当你发现某个英雄在安卓系统上玩起来更加得心应...
战神遗迹安卓苹果系统,探索神秘... 亲爱的玩家们,你是否曾在游戏中追寻那些传说中的神秘遗迹?今天,我要带你走进一个充满传奇色彩的领域——...
几何a安卓系统升级,畅享智能出... 你有没有发现,你的几何A最近变得聪明多了?没错,就是那个陪伴你上下班的几何A,它悄悄地升级了安卓系统...
系统最清爽的安卓手机,探索系统... 你有没有想过,拥有一部系统最清爽的安卓手机,就像是拥有了夏日里的一阵清风,让人心情舒畅,操作顺畅?今...
安卓10系统严重有问题,揭秘严... 最近你的安卓手机是不是也遇到了一些让人头疼的问题呢?别急,让我来给你一探究竟,看看安卓10系统到底有...
安卓系统闽政通打不开,“闽政通... 最近是不是有不少小伙伴在使用安卓手机时遇到了一个让人头疼的问题——闽政通打不开?别急,今天就来给你详...
安卓系统有指纹忘了图案,解锁攻... 手机解锁方式千千万,指纹解锁和图案解锁可谓是其中的佼佼者。但有时候,指纹解锁用得太多,导致忘记了图案...
QQ飞车安卓系统怎么换苹果系统... 你是不是也和我一样,对QQ飞车这款游戏爱得深沉呢?不过,最近我发现了一个超级有趣的问题:怎么把QQ飞...
安卓可冻结的系统文件,那些不可... 你知道吗?在安卓的世界里,有一些神秘的文件,它们就像隐藏在深宫中的宝贝,让人既好奇又敬畏。这些文件,...
安卓系统安装需要备份吗,关键指... 你最近是不是在准备给安卓手机升级系统或者安装新应用呢?别急,别急,在这之前,有个小细节你得注意一下—...
高仿ios的安卓系统,带你领略... 你有没有想过,为什么安卓手机那么受欢迎,却还是有人对iOS系统念念不忘呢?其实,现在市面上就有一种神...
安卓系统全能播放器,尽享视听盛... 你有没有发现,手机里总是装满了各种音乐、电影、电视剧,但是找到一个能让你一次性搞定所有播放需求的软件...
在哪里安装安卓系统好,安卓系统... 你有没有想过,为什么安卓系统这么受欢迎呢?它那强大的兼容性和丰富的应用生态,简直让人爱不释手。但是,...
如何自己提升安卓系统,自我提升... 你有没有发现,随着智能手机的普及,安卓系统已经成为了我们生活中不可或缺的一部分呢?但是,你是否想过,...
安卓子系统内存不足,应对策略与... 手机突然卡顿,是不是安卓子系统内存不足在作怪?别急,让我带你一探究竟,揭开这个问题的神秘面纱!一、安...
一鸣安卓系统如何安装,轻松上手... 你有没有想过,给你的安卓手机换换口味?别看它现在运行得风生水起,偶尔来点新鲜玩意儿,岂不是更带劲?今...
安卓操作系统的归属,源自谷歌的... 你有没有想过,那个陪伴你每天刷抖音、玩游戏、处理工作的安卓操作系统,它究竟是谁的孩子呢?今天,就让我...
安卓启动系统设置界面,揭秘安卓... 你有没有发现,每次打开安卓手机,那启动系统设置界面就像是个神秘的宝箱,里面藏着无数的小秘密?今天,就...