首页 > 系统相关 >Linux系统下数据同步服务rsync

Linux系统下数据同步服务rsync

时间:2024-07-18 18:59:18浏览次数:17  
标签:f1 rsync 同步 Linux folder root localhost

什么是rsync
Sync 同步:刷新文件系统缓存,强制将修改过的数据块写入磁盘,并且更新超级块async 异步:将数据先放到缓冲区,再周期性(一般是30s)的去同步到磁盘,
Sync数据同步 =>保存文件(目标)=>强制把缓存中的数据写入磁盘(立即保存),实时性要求比较高的场景
asyn数据异步 =>保存文件(目标)=>将数据先放到缓冲区,再周期性(一般是30s)的去同步到磁盘,适合大批量数据同步的场景

rsync特点

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

可以保留原有的权限(permission,mode),owner,group,时间(修改时间,modify time)软硬链接,文件acl,文件属性(attributes)信息等

传输==效率高==,使用同步算法,只比较变化的(增量备份)file1.txt file2.txt file3.txt$A服务器)

rsync实现数据同步=>只同步file3.txt =>增量备份

file1.txt file2.txt(B服务器)

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

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

PUSH:推,相当于上传;PULL:拉,相当于下载

2、本地文件同步

本地文件同步简单理解就是把文件从一个位置(同步=>拷贝)到另外一个位置(类似cp)

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

[root@localhost ~]# cd

[root@localhost ~]# mkdir folder

[root@localhost ~]# mkdir folder/f{1..3}

[root@localhost ~]# tree

[root@localhost ~]# touch folder/f1/file{0..4}

[root@localhost ~]# tree

Folder目录下的文件传递到opt目录下

rsync -av /dir1/ /dir2     把/dir1录中的所有文件拷贝到/dir2目录中

rsync -av /dir1 /dir3      把/dir1日录整体同步到/dir3目录中

[root@localhost ~]# rsync -av folder/ /opt/

[root@localhost ~]# ls /opt/

[root@localhost ~]# rsync -av folder /opt/

[root@localhost ~]# rm /opt/* -rf

[root@localhost ~]# ls -l /opt/

总用量 0

[root@localhost ~]# rsync -avR folder/ /opt/

[root@localhost ~]# tree /opt/

现在不传递到opt,就在本地几个目录传

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

[root@localhost ~]# touch folder/f1/file5

[root@localhost ~]# tree folder/

不会重复传,会更新新修改的

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

实现自动同步

[root@localhost ~]# rm -rf folder/f1/file0

[root@localhost ~]# rsync -av  --delete folder/f1/ folder/f2/

[root@localhost ~]# tree folder/

修改f1中的内容,f2中的没有改变

[root@localhost ~]# vi folder/f1/file1

[root@localhost ~]# cat folder/f1/file1

大家好我是刘包包,哈哈哈

[root@localhost ~]# cat folder/f2/file1

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

sending incremental file list

./

file1

sent 210 bytes  received 38 bytes  496.00 bytes/sec

total size is 37  speedup is 0.15

[root@localhost ~]# cat folder/f2/file1

大家好我是刘包包,哈哈哈

修改的时候文件的修改也会被rsync同步

[root@localhost ~]# touch folder/f1/file0 -m -d "2024-7-14 00:00"

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

[root@localhost ~]# touch folder/f1/file0 -m -d "2024-7-13 00:00"

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

[root@localhost ~]# ls -l folder/f1/file0

-rw-r--r--. 1 root root 0 7月  13 00:00 folder/f1/file0

[root@localhost ~]# chmod g+w folder/f1/file0

[root@localhost ~]# ls -l folder/f1/file0

-rw-rw-r--. 1 root root 0 7月  13 00:00 folder/f1/file0

[root@localhost ~]# rsync -av folder/f1/ folder/f2/

[root@localhost ~]# ls -l folder/f2/file0

-rw-rw-r--. 1 root root 0 7月  13 00:00 folder/f2/file0

同步文件内容修改,文件删除,以及文件的属性修改

远程文件同步

2台主机都支持rsync的服务

rsync -ac 源 用户@主机地址

获取数据pu 拉取,发送数据push推送数据

要实现远程同步,要求对面主机也安装rsync

向另外一台主机 /tmp目录同步数据

[root@localhost ~]# history > /history.txt

[root@localhost ~]# scp -r ./history.txt [email protected]:/usr/share/nginx/html/

[email protected]'s password:

scp: /usr/share/nginx/html/: No such file or directory

[root@localhost ~]# scp -r ./history.txt

从远程主机拉取数据

如果源目录不以/结尾,整个目录同步包含目录文件,带斜杠,只同步目录下的文件

-R保留目录的相对路径,也会携带目录

同步的内容 文件的新增 修改,删除(--delete) 属性(时间,权限)

使用计划任务每30s推送一次代码如果文件根本没有修改,就没有必要推送自动监听文件被修改的行为,再自动推送

编辑vi /rsync。Conf

添加两个属性

[root@localhost ~]# vi /etc/rsync.conf

编辑rsync密码

[root@localhost ~]# vi /etc/rsync.secrets

[root@localhost ~]# cat /etc/rsync.secrets

zhangsan:zhangsan

lisi:lisi

RSYNC集合INOTIFY工具实现代码实时同步

安装监听工具

[root@localhost ~]# yum -y install inotify-tools

标签:f1,rsync,同步,Linux,folder,root,localhost
From: https://blog.csdn.net/m0_72009757/article/details/140526913

相关文章

  • Linux安装mysql(超详细版)
    步骤1:新建一个文件夹,专放从网络下载的文件[root@iZ2zeh6vyxsq620zifz8jaZhome]#mkdirsoft#在根目录下创建也可以步骤2:切换目录,进入soft文件中[root@iZ2zeh6vyxsq620zifz8jaZ/]#cdhome/#若第一步文件建在根目录则执行该语句,否则不执行[root@iZ2zeh6vyxsq620zif......
  • Linux 提权-NFS 共享
    本文通过Google翻译NFSShareno_root_squash–LinuxPrivilegeEscalation这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充。导航0前言1什么是NFS共享?2外部枚举NFS共享2.1使用Nmap枚举NFS共享2.2枚举NFS共享2.3......
  • Linux PSI--Pressure Stall Information
    Google在在Android11及之后版本的LMKD中,使用了psi作为杀进程的策略,本文简单介绍下psi。转载自使用PSI(PressureStallInformation)监控服务器资源_Linux_gameneedless_InfoQ写作社区1.概述当CPU、内存或IO设备争夺激烈的时候,系统会出现负载的延迟峰值、吞吐量下降,并可能触发......
  • 【Linux网络编程-7】epoll边沿触发
    非阻塞recvEAGAIN、EWOULDBLOCK错误码值11返回值含义>0接收字节数0接收FIN包,连接被对端断开-1(errno==EAGAIN||EWOULDBLOCK)表示还有数据未读。反之,则表示发生了错误。//epollServer.cpp#include<stdio.h>#include<stdlib.h>#include<string.h>#in......
  • 操作系统发展简史(Unix/Linux 篇 + DOS/Windows 篇)+ Mac 与 Microsoft 之风云争霸
    操作系统发展简史(Unix/Linux篇)说到操作系统,大家都不会陌生。我们天天都在接触操作系统——用台式机或笔记本电脑,使用的是windows和macOS系统;用手机、平板电脑,则是android(安卓)和iOS系统。如果是从事信息通信行业,还经常会和ubuntu、CentOS、Fedora这样的Linux......
  • RSYNC服务、RSYNC与INOTIFY组合完成实时同步
    目录1、linux系统下数据同步服务RSYNC2、数据同步过程3、rsync与scp的区别 4、RSYNC的使⽤5、通过练习掌握rsyncRSYNC服务扩展设置1分钟推送一次文件为rsync服务添加密码RSYNC集合INOTIFY⼯具实现代码实时同步1、linux系统下数据同步服务RSYNCsync同步::刷新⽂件......
  • rsync数据同步服务,rsync+SSH同步,及inotify实时同步与rsync结合
    Linux系统下数据同步服务rsync一、rsync概述1.rsync的伙伴sync同步:刷新文件系统缓存,强制将修改过的数据写入磁盘,并且更新超级块async异步:将数据先放到缓冲区,在周期性(一般是30s)的去同步到磁盘rsync远程同步:==remodesynchronous==数据同步过程:sync数据同步=>保存⽂......
  • AMD R2000 Bilby 单板 串口在Grub和Linux下的使用
    Ubuntu20启动时,自动加载了UART驱动,系统启动信息含有UART的相关信息。[2.418748]printk:console[ttyS4]disabled[2.418757]AMDI0020:00:ttyS4atMMIO0xfedc9000(irq=3,base_baud=3000000)isa16550A[2.418820]printk:console[ttyS4]enabled[......
  • ETL数据集成丨通过ETLCloud工具,将Oracle数据实时同步至Doris中
    ETLCloud是一个全面的数据集成平台,专注于解决大数据量和高合规要求环境下的数据集成需求。采用先进的技术架构,如微服务和全Web可视化的集成设计,为用户提供了一站式的数据处理解决方案。主要特点和功能包括:实时数据处理:强调实时数据集成能力,这对于需要即时数据分析和决策支持的......
  • Linux基础命令
    1.查询目录中内容:ls2.查看日志:tail -f -n 日志文件名选项: -f:显示最新的追加打印的内容 -n 行数如:tail-f-n1000 a.log 3.查看所有正在运行的进程: ps-ef  如: 查看到进程号以后 ps-ef|grepjava 4.强制杀死进程:killpid......