rsync 服务介绍及相关实验
一、rsync 简介
rsync 是类 unix 系统下的数据镜像备份工具。一款支持快速完全备份和增量备份的工具,支持本 地复制,远程同步等,类似于 scp 命令;rsync 命令在同步文件之前要先登录目标主机进行用户身份 认证,认证过后才能进行数据同步,身份认证方式取决于所使用的协议类型,rsync 一般使用两种协议进行数据同步:ssh 协议和 rsync 协议。
二、rsync 特性
- 能更新整个目录树和文件系统
- 有选择性的保留符号链接、硬链接、文件属性、权限、设备以及时间等
- 对于安装来说,无任何特殊权限要求
- 对于多个文件来说,文件传输效率高
- 能用 ssh 或自定义端口作为传输入口端口
三、工作原理
既然涉及到数据同步,就要涉及到以哪一方为基准,哪一方为目标。例如,想让目标主机上的文件和本地文件保持同步,则是以本地文件为同步基准,将本地文件作为源文件推送到目标主机上。 rsync 在进行数据同步之前需要先进行用户身份验证,验证方式取决于使用的连接方式:
- ssh 登录验证模式:使用 ssh 协议作为基础进行用户身份认证,然后进行数据同步。
- rsync 登录验证模式:使用 rsync 协议进行用户身份认证(非系统用户),然后进行数据同步。
四、rsync 相关实验
1、 ssh 协议数据同步,将 NFS 服务器数据同步备份到 rsync 服务器
实现数据下载

格式:rsync -avz 服务器地址:/服务器目录/* /本地目录
示例:rsync -avz root@100.100.100.103:/share/* .
-a:归档模式,递归并保留对象属性
-v:显示同步过程
-z:在传输文件时进行压缩
实现数据上传

格式:rsync -avz /本地目录/* 服务器地址:/服务器目录
示例:rsync -avz ./* root@100.100.100.103:/share
注意:使用 root 用户进行实验可以,但生产环境中尽量使用单独创建的普通用户,减少权限溢出 创建用来做数据同步的用户,并给予用户对目录的相应权限,一般使用 ACL 设置权限
2、rsync 协议数据同步:将 NFS 服务器数据同步备份到 rsync 服务器
搭建rsync 服务
1)配置主配置文件
address = 100.100.100.103 #rsync 服务绑定 IP
port 873 #默认服务端口 873
log file = /var/log/rsyncd.log #日志文件位置
pid file = /var/run/rsyncd.pid #进程号文件位置
[web] #共享名:用来连接是写在 url 上的,切记
comment = rsync server #共享描述话语
path = /share #实际共享目录
read only = no #是否仅允许读取
dont compress = *.gz *.bz2 #哪些文件类型不进行压缩
auth users = love2 #登录用户名(非系统用户,需要自行创建)
secrets file = /etc/rsyncd_users.db
2)创建密码文件
vim /etc/rsyncd_users.db
love2:123456
chmod 600 /etc/rsyncd_users.db
3)启动服务
[root@centos share]# netstat -antp | grep :873
tcp 0 0 100.100.100.103:873 0.0.0.0:* LISTEN 2630/rsync
4)对 /share目录设立权限
setfacl -m u:nobody:rwx /share
实现下载
格式:rsync -avz rsync://用户名@服务器地址/共享模块名 /本地目录
示例:rsync -avz rsync://love2@100.100.100.103/web .
拓展:--delete:删除本地比服务器多出来的文件
rsync -avz --delete rsync://love2@100.100.100.103/web .
实现上传
格式:rsync -avz /本地目录/* rsync://用户名@服务器地址/共享模块名
示例:rsync -avz ./* rsync://love2@100.100.100.103/web
拓展:rsync 协议的免密码可以借助一个环境变量实现
# export RSYNC_PASSWORD=虚拟用户密码(客户端生成)
# export RSYNC_PASSWORD=123456
rsync 服务介绍及相关实验的更多相关文章
- nginx介绍及相关实验
一.nginx介绍 1.nginx简介 Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP 服务.Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 R ...
- Rsync服务介绍与配置
Rsync 简要介绍 rsync 是一个用于增量文件传输的开源工具,不得不说,rsync简直是不同服务器间传输文件.同步文件的利器.与FTP相比,它具有非常简单的安装和配置方法.而且,rsync可以只 ...
- Linux Rsync备份服务介绍及部署守护进程模式
rsync介绍 rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份工具 在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输 ...
- NFS服务介绍及实验
一.什么是NFS NFS 是 Network File System 的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由 Sun 公司开发,于 1984 年向外公布.功能是通过网络让不同的机器 ...
- 超详细,多图文使用galera cluster搭建mysql集群并介绍wsrep相关参数
超详细,多图文使用galera cluster搭建mysql集群并介绍wsrep相关参数 介绍galera cluster原理的文章已经有一大堆了,百度几篇看一看就能有相关了解,这里就不赘述了.本文主 ...
- rsync 服务部署详解
第1章 rsync 软件介绍 1.1 什么是rsync rsync 是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具. http://www.samba.org/ft ...
- CentOS7 Rsync服务搭建-Rsync+Inotify架构实现实时同步
一.rsync 概念 1.rsyncrsync是类unix/linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同 ...
- rsync工具介绍
rsync工具介绍 http://man.linuxde.net/rsync rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法” ...
- Linux搭建rsync服务
一.Rsync的简单介绍 Rsync是一款开源的.快速的.多功能的.可实现全量及增量(全量备份是指全部备份,增量备份是在上一次备份的基础上只备份更新的内容)的本地货远程数据同步备份的优秀工具.Rsyn ...
随机推荐
- Element-ui学习笔记3--Form表单(一)
Radio单选框 要使用 Radio 组件,只需要设置v-model绑定变量,选中意味着变量的值为相应 Radio label属性的值,label可以是String.Number或Boolean. & ...
- jquery实用应用之jquery操作radio、checkbox、select
本文收集一些jquery的实用技巧,非常实用的哦,其中对radio.checkbox.select选中与取值的方法. 获取一组radio被选中项的值var item = $('input[@name= ...
- Python--day66--内容回顾
3,python中的大小比较和js中的大小比较规则: python中a>b>c,就是先比较a>b,然后再比较b>c,都为true的话就返回true: js中的a>b> ...
- Python--day24--单继承关键字super
super(). 调用父类方法:(super不仅可以在一个类的内部使用,还可以在一个类的外部使用)
- tensorflow学习笔记(二十五):ConfigProto&GPU
tensorflow ConfigPrototf.ConfigProto一般用在创建session的时候.用来对session进行参数配置 with tf.Session(config = tf.Co ...
- H3C 环路避免机制六:触发更新
- P1015 高精度乘法
题目描述 给你两个很大的正整数A和B,你需要计算他们的乘积. 输入格式 输入一行包含两个正整数A和B,以一个空格分隔(A和B的位数都不超过 \(10^4\)) 输出格式 输出一行包含一个整数,表示A和 ...
- 2019-3-1-C#-double-好用的扩展
title author date CreateTime categories C# double 好用的扩展 lindexi 2019-3-1 9:19:5 +0800 2018-05-15 10: ...
- Linux 内核热插拔操作
热插拔事件的实际控制是通过一套存储于 kset_hotplug_ops 结构的方法完成. struct kset_hotplug_ops { int (*filter)(struct kset *ks ...
- webpack+babel+react+antd技术栈的基础配置
webpack+babel+react+antd技术栈的基础配置 前段时间使用webpack+babel+react+antd做了一套后台管理系统,刚开始被一大堆的新知识压的喘不过气来,压力挺大的.还 ...