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

news2024/12/25 13:45:44

 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博客

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

App Inventor 2 如何接入ChatGPT:国内访问OpenAI的最佳方式

如何接入OpenAI 由于国内无法访问OpenAI,KX上网可选大陆及香港(被屏蔽)以外才行。因此对于大多数人来说,想体验或使用ChatGPT就不太便利,不过App Inventor 2 为我们提供了相对便利的一种方式,即“试验性质…

快速搭建SpringMvc项目

一、什么是springMvc 1、介绍 Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就包含在Spring Framework中。正式名称“Spring Web MVC”来自其源模块的名称( spring-webmvc ),但它通常被称为“Spring MVC”。 在控制…

MVS net笔记和理解

文章目录 传统的方法有什么缺陷吗?MVSnet深度的预估 传统的方法有什么缺陷吗? 传统的mvs算法它对图像的光照要求相对较高,但是在实际中要保证照片的光照效果很好是很难的。所以传统算法对镜面反射,白墙这种的重建效果就比较差。 …

京准电子、NTP网络时间服务器工作原理及应用领域分析

京准电子、NTP网络时间服务器工作原理及应用领域分析 京准电子、NTP网络时间服务器工作原理及应用领域分析 Network Time Protocol(NTP)是一种用于在计算机网络中同步时钟的协议。它旨在确保在网络中的各个设备之间维持准确的时间。NTP的设计目标是允许…

qmt量化交易策略小白学习笔记第10期【qmt编程之获取股票订单流数据--内置Python】

qmt编程之获取股票订单流数据 qmt更加详细的教程方法,会持续慢慢梳理。 也可找寻博主的历史文章,搜索关键词查看解决方案 ! 感谢关注,需免费开通量化回测与咨询实盘权限,可以和博主联系! 获取股票订单流…

鹧鸪云光伏业务管理软件:引领光伏行业四个信息化变革

随着全球对可再生能源的日益重视和光伏技术的快速发展,光伏业务管理正面临着前所未有的挑战与机遇。在这个大背景下,鹧鸪云光伏业务管理软件以其独特的优势,通过四个信息化变革,为光伏行业带来了前所未有的效率提升和智能化管理。…

hypermesh二次开发tcl脚本

hypermesh二次开发tcl脚本 1、tcl读csv文件,得到list,再转成二维数组2、tcl写csv文件3、hypermesh tcl根据读入的节点坐标建节点, 再显示节点号4、hypermesh tcl根据节点号建节点set5、hypermesh tcl根据节点set读取节点号,再根据节点号读取节点坐标,再将…

vue 点击复制文本到剪贴板

一、首先在vue文件的template中定义复制按钮 <div size"small" v-if"item.prop jadeCode" class"cell-container"><span>{{ scope.row.jadeCode }}</span> <button click"handleCopy(scope.row.jadeCode)" clas…

FreeRTOS_事件组_学习笔记

事件组 原文链接 事件组是一个整数&#xff0c;其中的高8位留给内核&#xff0c;只能用其他位来表示时间 每一位代表一个事件&#xff0c;且每个时间的含义由程序员决定 1为发生&#xff0c;0为未发生 一个/多个任务或ISR都能读写这些位 可以等待某一位&#xff0c;也可以等待…

详细分析Element中的Drawer(附Demo)

目录 前言1. 基本知识2. Demo2.1 基本用法2.2 不同方向2.3 自定义大小2.4 嵌入表单2.5 嵌套抽屉 3. 实战4. Element Plus&#xff08;Drawer&#xff09; 前言 对于该组件针对Vue2比较多&#xff0c;而Element Plus中的Drawer针对Vue3比较多 此处的Demo主要偏向Vue2 后续的El…

五一期间吉祥桥再创新高,抢占宴席酒市场高位

“人生过三桥&#xff0c;必喝吉祥桥”“古韵吉祥桥&#xff0c;今喜结良缘”“吉祥桥下酒香飘&#xff0c;东方韵味醉心田”…… 这个五一&#xff0c;吉祥桥酒商的朋友圈热闹起来了&#xff0c;一边刷屏式宣传自家主打的宴席产品&#xff0c;一边炫耀式的发布每天的宴席成绩…

08.CNN

文章目录 Observation 1Pooling - Max PoolingFlattenApplication&#xff1a;Playing Go使用验证集选择模型食物分类 Observation 1 Pooling - Max Pooling Pooling主要为了降低运算量&#xff0c;现在一般不用了&#xff0c;全convolution Flatten Application&#xff1a;P…

一文了解安卓内存抖动

目录 目录一、什么是内存抖动&#xff1f;1.1 Android里的内存抖动1.2 如何直观查看这种现象1.3 内存抖动带来的风险 二、如何避免内存抖动 目录 一、什么是内存抖动&#xff1f; 在程序里&#xff0c;每创建一个对象&#xff0c;就会有一块内存分配给它&#xff0c;每分配一…

使用 RisingWave 和 Redash 处理和可视化实时数据

在创建流处理管道时&#xff0c;需要两个关键组件&#xff1a;一个用于处理和转换数据&#xff0c;一个用于数据可视化。RisingWave 和 Redash 就提供了一个优秀的解决方案。 RisingWave 是一个支持实时数据处理的分布式 SQL 流数据库。它提供增量更新的物化视图&#xff0c;使…

【MySQL精通之路】MySQL8.0新增功能-原子DDL语句支持

太长不看系列&#xff1a; 本文一句话总结&#xff0c;MySQL8.0支持多条DDL语句执行时的原子性了&#xff08;仅限Innodb&#xff09; 本文属于下面这篇博客的子博客&#xff1a; 【MySQL精通之路】MySQL8.0官方文档-新增功能 1.意义描述 MySQL 8.0支持原子数据定义语言&…

实用的TypeScript开发工具

1、根据接口数据自动定义类型变量&#xff1a;https://wulunyi.github.io/typeof-sjsonc-web/build/index.html ……&#xff08;持续更新中&#xff09;

Vue 离线地图实现

效果图&#xff1a; 一、获取市的地图数据 DataV.geoAtlas 获取市地图数据 点击地图缩放至想要的市区域&#xff0c;通过右侧的链接打开网址&#xff0c;复制json数据。 二、获取镇地图数据 选择你想要的镇数据&#xff0c;点击下载 选择级别&#xff08;清晰度&#xff09…

关闭以及启动ubuntu图形界面

关闭以及启动ubuntu图形界面 文章目录 关闭以及启动ubuntu图形界面1. 关闭图形界面2. 打开图形界面 如果你误杀了Xorg进程&#xff0c;需要重新启动图形界面&#xff0c;可以按照以下步骤操作&#xff1a; 1. 关闭图形界面 查看当前启动的图形界面&#xff1a; 使用下面命令…

【linux系统学习教程 Day03】网络安全之Linux系统学习教程,用户和用户组管理,创建用户,删除用户,创建组,删除组....

1.7 用户和用户组管理 1.7.1 用户管理 1-1 创建用户 #创建用户 useradd #创建一个用户 例子1&#xff1a;useradd test1 #创建用户 useradd #创建一个用户 例子1&#xff1a;useradd dilnur 1-2 设置密码 passwd 例子1&#xff1a;passwd dilnur #用root用户给…

9.1 Go语言入门(环境篇)

Go语言入门&#xff08;环境篇&#xff09; 目录一、什么是Go语言二、下载安装配置Go语言开发环境1. 下载2. 安装3. 配置环境变量4. 安装环境验证 三、 开发工具1. 下载2. 安装3. 激活4. 配置SDK 四、 创建go工程文件并运行1. 创建go工程2. 示例代码3. 运行代码 目录 一、什么…