当前位置: 首页 > news >正文

Rsync服务

一、Rsync概述

  rsync英文称为 remote synchronizetion,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,功能类似于ssh带的scp命令,优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝。

二、实验准备

  本实验模拟Rsync的远程模式(ssh隧道模式),模拟过程中,需要两台虚拟机(一台充当服务端,另一台充当客户端)。

三、实验步骤

3.1 基础操作

①安装rsync服务的包

[root@openEuler1 ~]# dnf install -y rsync
[root@openEuler2 ~]# dnf install -y rsync

②push推操作

#先创建一个文件
[root@openEuler1 ~]# echo " iyuyi.xyz@aliyun.com " > /opt/xyz.txt
[root@openEuler1 ~]# ll /opt/
total 4
-rw-r--r-- 1 root root 23 Jan 25 16:17 xyz.txt
#进行push推操作,相当于上传,由于我配置了免密钥登录,所有在此没有要密码
[root@openEuler1 ~]# rsync -avz /opt/xyz.txt 192.168.126.141:/opt/        #-a表示:递归传输数据,保持文件属性和权限;-v表示:显示详细信息;-z表示:传输是进行压缩提高传输效率
Authorized users only. All activities may be monitored and reported.
sending incremental file list
xyz.txtsent 131 bytes  received 35 bytes  110.67 bytes/sec
total size is 23  speedup is 0.14
#查看结果
[root@openEuler2 ~]# ll /opt/
total 4
-rw-r--r-- 1 root root 23 Jan 25 16:17 xyz.txt

③pull拉操作

#与push是相反的操作
[root@openEuler1 ~]# rsync -avz 192.168.126.141:/opt/xyz.txt /root/Authorized users only. All activities may be monitored and reported.
receiving incremental file list
xyz.txtsent 43 bytes  received 131 bytes  116.00 bytes/sec
total size is 23  speedup is 0.13
#查看结果
[root@openEuler1 ~]# ll /root/
total 12
-rw-------. 1 root root  706 Jan 23 21:05 anaconda-ks.cfg
drwxr-xr-x  3 root root 4096 Jan 23 22:20 findfiles
-rw-r--r--  1 root root   23 Jan 25 16:17 xyz.txt

3.2 守护进程 

3.2.1 服务端配置

①创建需要传输的目录

[root@openEuler1 ~]# mkdir /backup

 ②配置文件

[root@openEuler1 ~]# vim + /etc/rsyncd.conf
#全局配置
uid = rsync
gid = rsync
use chroot = no
max connections = 100
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
ignore errors
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
hosts allow = 192.168.126.0/24
fake super = yes        #这个必须写,不写服务无法启动
auth users = rsync_backup
secrets file = /etc/rsync.passwd
#局部配置
[bak]        #共享的目的地名字comment = my backup        #描述信息path = /backup        #这台机器的哪一个目录让它进行传文件read only = false        #权限设置list = false        #权限设置

 ③创建用户(与配置文件指定的要一致)

[root@openEuler1 ~]# useradd rsync -s /sbin/nologin -M        #-s /sbin/nologin 不需要登录 -M没有家目录
[root@openEuler1 ~]# cat > /etc/rsync.passwd << EOF
> rsync_backup:123456
> EOF

 ④修改文件和目录权限

[root@openEuler1 ~]# chmod 600 /etc/rsync.passwd
[root@openEuler1 ~]# chown -R rsync:rsync /backup

⑤启动服务

[root@openEuler1 ~]# systemctl start rsyncd

3.2.2 客户端测试

[root@openEuler2 ~]# rsync -avz /opt/xyz.txt rsync_backup@192.168.126.140::bak
Password:
sending incremental file list
xyz.txtsent 125 bytes  received 43 bytes  48.00 bytes/sec
total size is 13  speedup is 0.08

3.2.3 客户端免密登录

[root@openEuler2 ~]# rsync -avz /opt/xyz.txt rsync_backup@192.168.126.140::bak --password-file=/etc/rsync.passwd
sending incremental file list
xyz.txtsent 132 bytes  received 49 bytes  362.00 bytes/sec
total size is 20  speedup is 0.11
[root@openEuler2 ~]# more /opt/xyz.txt
娇小赤雅
123456

相关文章:

  • R语言【taxa】——n_subtaxa(),n_supertaxa():每个类群的子类群数量和父类群数量
  • 使用__missing__方法实现映射表多格式主键
  • Windows AD 组策略 通过脚本修改管理员密码:以安全方式
  • nc转tif
  • 全栈工程师
  • 【C++入门到精通】智能指针 shared_ptr循环引用 | weak_ptr 简介及C++模拟实现 [ C++入门 ]
  • 【笔记】Helm-4 最佳实践-2 values
  • 01.领域驱动设计:微服务设计为什么要选择DDD学习总结
  • 2024年【G2电站锅炉司炉】新版试题及G2电站锅炉司炉作业考试题库
  • Layui技术积累
  • Qt Quick程序的发布|Qt5中QML和Qt Quick 的更改
  • 【GitHub项目推荐--不错的 Go 学习项目】【转载】
  • ZYNQ程序固化
  • AIGC:让生成式AI成为自己的外脑(文末送书)
  • 操作无法完成,因为文件已在Windows资源管理器中打开,如何解决?以及如何将哔哩哔哩下载好的视频导出到电脑中播放?— 以vivo手机为例
  • 【Leetcode】101. 对称二叉树
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Github访问慢解决办法
  • JavaScript设计模式与开发实践系列之策略模式
  • js操作时间(持续更新)
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • Markdown 语法简单说明
  • - 概述 - 《设计模式(极简c++版)》
  • 搞机器学习要哪些技能
  • 前端_面试
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • UI设计初学者应该如何入门?
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • (20050108)又读《平凡的世界》
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (LeetCode 49)Anagrams
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • *** 2003
  • .net 4.0发布后不能正常显示图片问题
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • .NET构架之我见
  • .NET委托:一个关于C#的睡前故事
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • @EnableConfigurationProperties注解使用
  • @FeignClient注解,fallback和fallbackFactory
  • @Pointcut 使用
  • [Angular 基础] - 数据绑定(databinding)
  • [docker] Docker的数据卷、数据卷容器,容器互联
  • [elastic 8.x]java客户端连接elasticsearch与操作索引与文档
  • [idea]关于idea开发乱码的配置
  • [linux] git lfs install 安装lfs
  • [NOIP 2015] Day.1 T1 神奇的幻方 [模拟]
  • [POJ 2888]Magic Bracelet[Polya Burnside 置换 矩阵]
  • [Python人工智能] 四十二.命名实体识别 (3)基于Bert+BiLSTM-CRF的中文实体识别万字详解(异常解决中)