rsync配置和守护进程实践

目录

一、rsync概念

1.rsync简介

2.rsync特点

3、增量和全局传输

二、Rsync工作方式

1.准备好rsync备份服务器

2.本地的数据传输模式

3.远程的数据传输模式

4.rsync数据推拉模式

三、实践

1.准备三台虚拟机

2.都安装rsync服务

3.拉取远程文件

3.推送文件

4.rsync守护模式传输

四.rsync守护进程部署

1.确保安装了rsync服务

2.修改服务端配置文件

4.在rsync服务端做好环境配置工作

5.启动rsync服务开机自启

6.客户端配置

8.rsync大文件断点续传


一、rsync概念

1.rsync简介

全局数据备份,以及增量数据备份本地,远程的数据同步,一款优秀的工具

rsync可以类似于cp一样,实现本地数据拷贝

也能像scp一样进行远程的数据拷贝

还支持守护进程方式数据拷贝

delta-transfer算法,实现增量复制

scp远程数据传输,只能是实现全量数据传输

2.rsync特点

  • 可以实现cp效果,本地数据备份
  • 实现远程数据同步复制,如scp效果
  • 如rm效果可以删除本地文件
  • 也可以实现远程的数据查看,例如远程的ssh+ls的命令执行

软件特性

  • rsync支持普通文件拷贝,支持特殊文件拷贝,link,c设备文件
  • 还支持文件排他,可以指定不拷贝那些文件
  • 还能实现数据拷贝后,属性不发生变化(start命令查看)
  • 特点~支持增量数据拷贝
  • rsync可以配合ssh实现安全的数据传输,rsync本身不支持数据加密
  • rsnc支持匿名用户传输

3、增量和全局传输

rsync在数据备份的时候,通过quick check算法,检测数据,容量,最后修改时间变化

rsync甚至可以复制单个文件的内容传输

增量传输的原理就是,一边对比差异,一边对比差异进行数据复制,centos7上的3.x版本,效率更高


二、Rsync工作方式

1.准备好rsync备份服务器

安装rsync工具

yum install -y rsync

2.本地的数据传输模式

类似于cp,ls,touch命令的增删改查,实现数据的增量备份

语法模式

备份hosts文件

rsync /etc/hosts /tmp/

差异化同步

file目录和tmp目录差异化同步

[root@localhost /]# mkdir /file/{11,22,33}
[root@localhost /]# ls -l file
total 0
drwxr-xr-x. 2 root root 6 Nov 12 08:12 11
drwxr-xr-x. 2 root root 6 Nov 12 08:12 22
drwxr-xr-x. 2 root root 6 Nov 12 08:12 33
[root@localhost /]# ls -l /tmp/
total 0
[root@localhost /]# rsync -r --delete /file/ /tmp/
[root@localhost /]# ls -l /tmp/
total 0
drwxr-xr-x. 2 root root 6 Nov 12 08:12 11
drwxr-xr-x. 2 root root 6 Nov 12 08:12 22
drwxr-xr-x. 2 root root 6 Nov 12 08:12 33

文件差异化同步

[root@localhost /]# echo "111111111122222222222222" > /file/1.txt
[root@localhost /]# cat /file/1.txt 
111111111122222222222222
[root@localhost /]# touch /tmp/null
[root@localhost /]# cat /tmp/null 
[root@localhost /]# rsync -r --delete /tmp/null file/1.txt 
[root@localhost /]# cat /file/1.txt 

3.远程的数据传输模式

借助于ssh服务在两台机器之间进行数据传输,此时已经没有客户端和服务端之分,而是一种相对关系。

4.rsync数据推拉模式

远程的数据传输模式,有两种情况,推送和拉取

拉取:把远程服务器的数据,拉取到本地来

推送:把本地的数据,推送,上传发送远程的服务器


三、实践

1.准备三台虚拟机

第一台

第二台

第三台

2.都安装rsync服务

yum install rsync -y

3.拉取远程文件

我们在192.168.0.103服务器上创建一个文件

echo "yuancheng rsync" > /tmp/yuanc.txt

拉取文件,然后检查

rsync -av -e 'ssh -p 22' root@192.168.0.103:/tmp/yuanc.txt /tmp/
cat /tmp/yuanc.txt 

3.推送文件

rsync -av -e 'ssh -p 22'  /tmp/yuanc.txt root@192.168.0.107:/tmp/

4.rsync守护模式传输

守护模式传输是在客户端与服务端之间的数据复制

服务端需要配置好守护进程,等待客户端远程的执行数据同步命令,然后实现数据的拉取和推送


四.rsync守护进程部署

1.确保安装了rsync服务

yum install rsync -y 

2.修改服务端配置文件

vim /etc/rsyncd.conf

输入

 uid = rsyncgid = rsyncfake super = yesuse chroot = nomax connections = 200pid file = /var/run/rsyncd.pidlock file = /var/run/rsync.locklog file = /var/log/rsyncd.lockiignore errorsread only = falselist = falsehosts allow = 192.168.0.0/24hosts deny = 0.0.0.0/32auth users = rsync_backupsecrets file = /etc/rsync.password[backup]comment = This is rsync backup!path = /backup/[myweb]path=/my_web/

3.创建用户

useradd rsync -s /sbin/nologin -M
id rsync

4.在rsync服务端做好环境配置工作

mkdir -p /backup
chown -R rsync.rsync /backup
echo "rsync_backup:123456" > /etc/rsync.password
chmod 600 /etc/rsync.password

5.启动rsync服务开机自启

systemctl restart rsyncd
systemctl enable rsyncd

netstat -tunlp|grep rsync

6.客户端配置

yum install rsync -y
echo "123456" > /etc/rsync.password 
chmod 600 /etc/rsync.password 
export RSYNC_PASSWORD=123456
echo "export RSYNC_PASSWORD=123456" >> /etc/profile

7.测试

客户端推送数据

rsync -avzP /my_rsync rsync_backup@192.168.0.107::backup --password-file=/etc/rsync.password

服务端

客户端拉取数据

服务端创建文件

touch /backup/{11,22,33,44,55,66,77}
ls /backup/

客户端

 rsync -avzP  rsync_backup@192.168.0.107::backup --password-file=/etc/rsync.password /my_rsync/

exclude排除文件

服务端准备

touch /backup/{11,22,33,44,55,66,77}
mkdir /backup/{a,b,c,d,e,f}
touch /backup/a/11
touch /backup/b/22
touch /backup/c/33
touch /backup/d/44

客户端

rsync --exclude=11 --exclude=d/44 -avzP rsync_backup@192.168.0.107::backup --password-file=/etc/rsync.password /my_rsync/

8.rsync大文件断点续传

rsync提供了如下的参数

  • partial

默认情况下rsync传输中断后,将会删除所有传输了一部分的文件,重新传输在某些情况下,用户可能会希望保留已经传输的内容,该参数,告知rsync保留已经传输好的内容,使得剩余部分,可以继传输

  • partial-dir=DIR

保留已经传输的部分文件,且将内容保存到一个目录中,而不是立即写入到目标文件,便于下次传输的时候,rsync使用该目录中的数据,再进行整体数据的传输和恢复,结束后删除该目录

if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >

of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >

bs=bytes:同时设置读入/输出的块大小为bytes个字节。

count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。

实例

服务端

 dd if=/dev/zero of=/backup/file bs=10M count=128

客户端

rsync -avzP --partial-dir=/tmp//my_rsync/test1 rsync_backup@192.168.0.107::backup  --password-file=/etc/rsync.password /my_rsync/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/201365.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

变态跳台阶,剑指offer

目录 题目&#xff1a; 我们直接看题解吧&#xff1a; 相似题目&#xff1a; 解题方法&#xff1a; 审题目事例提示&#xff1a; 解题思路&#xff1a; 代码实现&#xff1a; 题目地址&#xff1a; 【剑指Offer】9、变态跳台阶 难度&#xff1a;简单 今天刷变态跳台阶&#xf…

【GUI】-- 13 贪吃蛇小游戏之食物及成绩判断

GUI编程 04 贪吃蛇小游戏 4.4 第四步&#xff1a;食物及成绩判断 首先&#xff0c;添加食物与分数的数据定义&#xff1a; //食物的坐标int foodX;int foodY;Random random new Random();//积分面板数据结构int score;在初始化方法中&#xff0c;添加(画出)食物与分数&…

HarmonyOS从基础到实战-高性能华为在线答题元服务

最近看到美团、新浪、去哪儿多家互联网企业启动鸿蒙原生应用开发&#xff0c;这个HarmonyOS NEXT越来越引人关注。奈何当前不面向个人开发者开放&#xff0c;但是我们可以尝试下鸿蒙新的应用形态——元服务的开发。 元服务是基于HarmonyOS提供的一种面向未来的服务提供方式&…

万字解析:十大排序(直接插入排序+希尔排序+选择排序+堆排序+冒泡排序+快速排序+归并排序+计数排序+基数排序+桶排序)

文章目录 十大排序排序算法复杂度及稳定性分析一、 排序的概念1.排序&#xff1a;2.稳定性&#xff1a;3.内部排序&#xff1a;4.外部排序&#xff1a; 二、插入排序1.直接插入排序2.希尔排序 三、选择排序1.直接选择排序方法一方法二直接插入排序和直接排序的区别 2.堆排序 四…

五大资源之Service(可以固定IP)

Service可以看作是一组同类Pod对外访问接口,借助Service应用可以方便的实现服务发现与负载均衡 创建集群内部可以访问Service #暴露Service(也创建在了namespace dev下) [root@master ~]# kubectl expose deployment(pod控制器) nginx --name=svc-nginx1 --type=Cluste…

python上下文管理器

Python中的上下文管理器&#xff0c;是Python的异常处理机制中的一部分。它允许你在一段代码的开头和结尾之间建立一种关联&#xff0c;以确保在代码执行完毕后进行一些清理工作&#xff0c;比如关闭文件、断开网络连接等。 在Python中&#xff0c;你可以使用with关键字和一个…

基于原子轨道搜索算法优化概率神经网络PNN的分类预测 - 附代码

基于原子轨道搜索算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于原子轨道搜索算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于原子轨道搜索优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xf…

基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码

基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于天鹰优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xff1a;针对PNN神经网络的光滑…

机器学习/sklearn 笔记:K-means,kmeans++

1 K-means介绍 1.0 方法介绍 KMeans算法通过尝试将样本分成n个方差相等的组来聚类&#xff0c;该算法要求指定群集的数量。它适用于大量样本&#xff0c;并已在许多不同领域的广泛应用领域中使用。KMeans算法将一组样本分成不相交的簇&#xff0c;每个簇由簇中样本的平均值描…

基于Acconeer的A121-60GHz毫米波雷达传感器SDK移植及测距示例(STM32L496为例)

基于Acconeer的A121-60GHz毫米波雷达传感器SDK移植及测距示例&#xff08;STM32L496为例&#xff09; 工程&#xff1a; Keil工程资源 参考资料&#xff1a; A121 datasheet 1.3 A121 HAL Software Integration User Guide A121 STM32CubeIDE User Guide 官方参考示例工程&a…

ultralytics yolov8 实例分割 训练自有数据集

参考: https://docs.ultralytics.com/datasets/segment/coco/ http://www.bryh.cn/a/613333.html 1、数据下载与转换yolo格式 1)数据集下载: 参考:https://universe.roboflow.com/naumov-igor-segmentation/car-segmetarion 下载的是coco格式,需要转换 2)coco2yolo t…

边云协同架构设计

文章目录 一. "边云协同"是什么&#xff1f;二. "边云协同"主要包括6种协同2.1 资源协同2.2 数据协同2.3 智能协同2.4 应用管理协同2.5 业务管理协同2.6 服务协同 三. "边云协同"的优势 其它相关推荐&#xff1a; 系统架构之微服务架构 系统架构…

OpenCV [c++](图像处理基础示例小程序汇总)

OpenCV [c++](图像处理基础示例小程序汇总) 推荐 原创 NCUTer 2023-04-04 14:18:49 文章标签 Image 图像处理 文章分类 计算机视觉 人工智能 在51CTO的第一篇博文 阅读数1467 一、图像读取与显示 #include<opencv2/opencv.hpp> #include<iostream>using…

__int128类型movaps指令crash

结论 在使用__int128时&#xff0c;如果__int128类型的内存起始地址不是按16字节对齐的话&#xff0c;有些汇编指令会抛出SIGSEGV使程序crash。 malloc在64位系统中申请的内存地址&#xff0c;是按16字节对齐的&#xff0c;但一般使用时经常会申请一块内存自己切割使用&#…

这样写postman实现参数化,阿里p8都直呼牛逼

什么时候会用到参数化 比如&#xff1a;一个模块要用多组不同数据进行测试 验证业务的正确性 Login模块&#xff1a;正确的用户名&#xff0c;密码 成功&#xff1b;错误的用户名&#xff0c;正确的密码 失败 postman实现参数化 在实际的接口测试中&#xff0c;部分参数…

maven打包可执行jar含依赖lib

修改pom.xml <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- jdk8可用&#xff0c;其他jdk版本可能需改插件版本 --><version>2.3.7.RE…

深入 Django 的 URL 分发器

概要 在 Django 的 MVC 架构中&#xff0c;URL 分发器扮演着至关重要的角色&#xff0c;它负责将用户的请求路由到相应的视图函数或类。这一机制不仅保证了 Django 应用的高度可扩展性&#xff0c;还为开发者提供了灵活的 URL 设计能力。本文将详细介绍 Django 中的 URL 分发器…

使用jmeter对接口进行简单测试

JMeter是一个开源的性能测试工具&#xff0c;它可以对于Web应用程序、FTP、数据库服务器等各种服务器进行性能测试和负载测试&#xff0c;以确定它们是否能够承受预期的负载。JMeter支持多种协议和技术&#xff0c;如HTTP、HTTPS、FTP、JDBC、LDAP、SOAP、JMS等。它使用Java编写…

rotation matrix reflection matrix

文章目录 1. rotation matrix1.1 结论 2. reflection matrix2.1 结论 1. rotation matrix 图像逆时针旋转 θ \theta θ的矩阵 Q r o t a t e [ cos ⁡ θ − sin ⁡ θ sin ⁡ θ cos ⁡ θ ] (1) Q_{rotate}\begin{bmatrix}\cos\theta&-\sin\theta\\\sin\theta&\c…