【技术实操】中标麒麟高级服务器操作系统实例分享,rsync数据同步配置方案

 1.rsync介绍

rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份工具。

在守护进程模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输协议或者通过远程shell如RSH或者SSH提供文件。SSH模式下,rsync客户端运行程序必须同时在本地和远程机器上安装。

全量与增量,全量:将全部数据进行传输覆盖,增量:只传输差异部分的数据,rsync通过独特的“quick check”算法,实现增量数据传输

2. 配置环境

系统环境:2台麒麟V7.6服务器操作系统,版本信息如下:

备份服务器:192.168.216.120

客户端服务器(nfs存储共享):192.168.216.121

目的:将nfs服务器/www目录的数据,备份到备份服务器的/backup/web目录

3.rsync配置步骤

3.1安装rsync

服务端(备份服务器)和客户端都要安装,命令如下:

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

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

3.2服务端配置

  • 1)服务端配置文件,/etc/rsyncd.conf配置

[root@server ~]# vim /etc/rsyncd.conf

#同步到服务端的文件或目录,用户名和组,继承这里的设置

uid = nobody                      #进行备份的用户为nobody

gid = nobody                      #进行备份的组nodody

use chroot = no                     #不用chroot,安全相关

max connections = 200               #最大链接数

timeout = 300                      #超时时间(不进行备份多次时间断开)

pid file = /var/run/rsyncd.pid          #进程对应进程号文件

lock file = /var/run/rsync.lock         #锁文件

log file = /var/log/rsyncd.log          #日志文件,显示出错信息

fake super = yes                    #新版rsync必须加此参数

#模块信息:

[backup]                 

comment = "backup"                #模块名称

path = /backup/web                  #模块对应路径

ignore errors                       #忽略错误程序

read only = no                     #是否只读,这里设置可写

list = false                         #是否可以列表,这里设置否

hosts allow = 192.168.216.0/24        #准许访问rsync服务器客户端范围(白名单)

auth users = root                    #认证的用户名

secrets file = /etc/rsync.password       #密码文件存放位置

  • 创建数据备份目录和认证用户密码文件

[root@server ~]# mkdir -p /backup/web

[root@server ~]# chown nobody.nobody /backup/ -R

[root@server ~]# chmod 777 -R /backup/

[root@server ~]# echo "root:qwer1234" > /etc/rsync.password

[root@server ~]# chmod 600 /etc/rsync.password

  • 启动rsyncd服务

[root@server ~]# systemctl start rsyncd

[root@server ~]# systemctl status rsyncd

● rsyncd.service - fast remote file copy program daemon

   Loaded: loaded (/usr/lib/systemd/system/rsyncd.service; disabled; vendor preset: disabled)

   Active: active (running) since 四 2023-09-07 18:41:00 CST; 5s ago

 Main PID: 40823 (rsync)

    Tasks: 1

   CGroup: /system.slice/rsyncd.service

           └─40823 /usr/bin/rsync --daemon --no-detach

9月 07 18:41:00 server systemd[1]: Started fast remote file copy program daemon.

  • 查看已经正常启动并监听873端口

[root@server ~]# ps -ef | grep rsync

root      40823      1  0 18:41 ?        00:00:00 /usr/bin/rsync --daemon --no-detach

root      41024  12951  0 18:41 pts/1    00:00:00 grep --color=auto rsync

[root@server ~]# netstat -lntup | grep rsync

tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      40823/rsync

tcp6       0      0 :::873                  :::*                    LISTEN      40823/rsync

3.2 客户端配置

1)创建密码文件,客户端密码文件中,只需要密码即可,文件权限600

[root@client ~]# echo "qwer1234" > /etc/rsync.password

[root@client ~]# chmod 600 /etc/rsync.password

3.3 文件传输测试

客户端上传至服务器测试,蒋整个/www文件夹备份过去。

root为服务器中配置文件的auth users参数,::backup是以后的模块参数及配置文件中的[backup],后面接配置文件中的密码文件路径,免交互,不用输入密码就可传输。命令如下:

[root@client ~]# rsync -avz /www/ root@192.168.216.120::backup --password-file=/etc/rsync.password

sending incremental file list

./

sent 140 bytes  received 27 bytes  334.00 bytes/sec

total size is 4  speedup is 0.02

测试客户端/www目录创建如下4个txt文件,其中1.txt文件内容为123,使用如上客户端同步命令后,查看服务端/backup/web目录下同步过来/www目录下的4个txt文件,1.txt文件内容正确,如下图:

Client

Server

改客户端1.txt文件内容,使用rsync命令同步后,查看服务端1.txt内容同客户端一致。如下图:

Client

Server

客户端/www目录,增加文件5.txt,查看服务端同步了增加的文件。如下图:

Client

Server

 删除客户端/www/2.txt文件,客户端使用rsync命令加上--delete无差异同步数据,查看服务端,同步到被删除的文件,如下图:

Client

Server

3.4 rsync命令参数

 4.结论

   综上,配置和测试验证情况来看,rsync基本可以满足,增删改文件和目录,相关操作,时间戳保持一致。客户端rsync同步命令,建议用如下加上--delete,无差异同步参数同步到备份服务端,命令如下:

 rsync -avz --delete /www/ root@192.168.216.120::backup --password-file=/etc/rsync.password

 注:192.168.216.120为备份服务端ip地址

[root@client www]# rsync -avz --delete --bwlimit=10240 /www/ root@192.168.216.120::backup --password-file=/etc/rsync.password  --rsync支持限速传输

sending incremental file list

./

test.img

sent 1,044,536 bytes  received 50 bytes  9,123.02 bytes/sec

total size is 1,073,741,833  speedup is 1,027.91

注:

参考链接:

运维笔记:Linux搭建rsync备用服务器,及配置文件详解_rsync和sersync对目录进行备份-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mysql误删后使用binlog恢复数据

1 预期效果 使用 binlog 恢复数据的预期效果是将误删的数据还原到误删之前的状态,以减少或消除数据丢失的影响。通过正确解析和执行 binlog 中的操作记录,可以重新执行误删操作之后的插入、更新或删除操作,从而恢复被误删的数据。 数据恢复&…

深度学习之基于Django+Tensorflow卷积神经网络实时口罩检测系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 随着全球疫情的持续,佩戴口罩成为了公众日常生活中不可或缺的一部分。特别是在人员密集的…

Linux从零部署本地AI大模型对接本地知识库全记录

使用到的工具 dockeroneapi fastgptollama 安装docker 已安装有docker的话跳过这一步 执行命令安装docker(一行一行执行) curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun systemctl enable --now docker执行命令安装docker-co…

2024定制版抢单支付系统源码(开代理自动抢单接单)

随着网络和移动支付技术的不断进步,抢单支付系统已经成为商家和用户进行交易的便利工具。2024定制版抢单支付系统源码为开发者提供了一个可定制化的解决方案,具备开放代理和自动抢单接单功能,帮助用户快速搭建抢单支付平台。本文将为您介绍这…

redis集群不允许操作多个key解决方案、redis key负载均衡方案

前提 在cluster redis 中进行同一个命令处理不同的key会报错:CROSSSLOT Keys in request dont hash to the same slot,例如: 此示例使用sdiff 命令对pool_1与pool_2进行diff操作。 那么我们在业务场景中就需要将集群redis中的不同key进行操作,我们该如何处理呢? 本次的…

用C语言把一棵普通二叉树安排得明明白白

1. 树的相关术语 结点的度:一个结点含有的子树的个数称为该结点的度; 如上图:A的为6 叶结点或终端结点:度为0的结点称为叶结点; 如上图:B、C、H、I...等结点为叶结点 非终端结点或分支结点:度不…

《微服务王国的守护者:Spring Cloud Dubbo的奇幻冒险》

5. 经典问题与解决方案 5.3 服务追踪与链路监控 在微服务架构的广袤宇宙中,服务间的调用关系错综复杂,如同一张庞大的星系网络。当一个请求穿越这个星系,经过多个服务节点时,如何追踪它的路径,如何监控整个链路的健康…

k8s遇到的错误记录

时隔四年有开始重新鼓捣k8s了,重新安装后遇到的错误记录如下: Error: Package: kubelet-1.14.0-0.x86_64 (kubernetes) Requires: kubernetes-cni 0.7.5 Available: kubernetes-cni-0.3.0.1-0.07a8a2.x86_64 (kubernetes) …

MySQL——存储过程,触发器

BaiduComate: # 问题1: # 问题1: 帮我创建两个表student与score表,要求student表有id,createDate,userName,phone,age,sex,introduce, 要求score表有id&…

全面掌握深度学习:从基础到前沿

引言:深入探索深度学习的世界 在人工智能(AI)的广阔领域中,深度学习已经成为最令人瞩目的技术之一。它不仅推动了科技的许多突破性进展,也正在改变我们的工作和生活方式。本博客旨在全面总结深度学习的关键知识点&…

Kubeblocks系列2-redis尝试之出师未捷身先死

背景: 上一节,完成了Kubeblocks系列1-安装。现在就想拿一个简单的应用测试一下kubeblocks这个所谓的神器是否好用,是否可以应用与生产! Kubeblocks系列2-redis尝试 参照官方文档:创建并连接到 Redis 集群 确保 Red…

使用docker+jenkins构建前端项目发布到nginx

1.准备环境 为了方便公司开发优化代码,不需要反复地将项目包发送给运维部署,我们对开发环境的前端项目利用jenkinsCI/CD进行自动化部署 需要两台服务器 一台jenkins 一台发布服务器,这里发布服务器 我直接使用开发环境的服务器 将admin界面与云计算展示…

python调用百度文心一言对话模型

近日,百度宣布其两款主力模型 ENIRE Speed、ENIRE Lite 可以免费使用。试了一下怎么程序调用。 1.准备工作 需要注册百度智能云账号,也可以使用原来的百度账号登录,登录之后要完成实名认证,才能使用API调用。在千帆大模型操作台…

5.23-

回顾 I0多路复用的原理? 程序首先向操作系统发起一个IO多路复用请求,告诉操作系统需要监视哪些IO通道。这些IO通道可以包括网络套接字、文件描述符等操作系统随后会将这些IO通道放入一个队列中,并在某个IO通道就绪时(如数据到达、文件可读…

滴滴三面 | Go后端研发

狠狠的被鞭打了快两个小时… 注意我写的题解不一定是对的,如果你认为有其他答案欢迎评论区留言 bg:23届 211本 社招 1. 自我介绍 2. 讲一个项目的点,因为用到了中间件平台的数据同步,于是开始鞭打数据同步。。 3. 如果同步的时候…

Linux-centos下安装ffmpeg的详细教程

源安装 第一种方式: . 首先需要安装yum源: 这个源安装的ffmpeg版本是3.4 yum install epel-release yum install -y https://mirrors.ustc.edu.cn/rpmfusion/free/el/rpmfusion-free-release-7.noarch.rpm然后可以安装ffmpeg yum install -y ffmpeg ff…

data studio连接到虚拟机上的openGauss

参考:使用DataStudio连接本地虚拟机中的opengauss数据库_big data_白日梦想家_胖七七-华为云开发者联盟 本实验虚拟机安装的是CentOS7 数据库版本是:openGauss-5.0.2-CentOS-64bit-all.tar.gz 1.配置pg_hba.conf 首先使用su - omm登录到omm用户&…

家电维修上门维修小程序怎么搭建制作?

​在家庭生活中,家电的维修问题一直是人们关注的焦点。随着微信小程序的普及,家电维修服务行业也迎来了线上转型的机遇。一款便捷、高效的家电维修上门维修小程序,不仅能为维修服务商带来新的客户,也能为用户带来更便捷的服务体验…

JavaWeb基础(HTML,CSS,JS)

这些知识用了三四天左右学完,因为是JavaWeb,并不是前端,所以只是够用,不是深入,但是这确实是学校一个学期交的东西(JavaWeb课程)。 总结一下网页分为三部分:HTML(内容结构),CSS&…

详解ArcGIS 水文分析模型构建

目录 前言 项目环境、条件 Dem 数据预览 ArcGIS模型构建器 模型搭建 填洼 流向 流量 河流长度 栅格计算器 河流链接 河网分级 栅格河网矢量化 绘制倾泻点 栅格流域提取 集水区 盆域分析 栅格转面 模型应用 导出 py 文件 完善脚本 最终效果 结束语 前言 …