一、Rsync 服务器
1、Rsync 介绍
- rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具。并且可以不进行
改变原有数据的属性信息,实现数据的备份迁移特性。
- rsync软件适用于unix/linux/windows等多种操作系统平台
- rsync是一个快速和非常方便的文件复制工具。它能本地复制,远程复制,或者远程守护进程方式复制,它提供了大量的
参数来控制其行为的各个方面,并且允许非常灵活的方式来实现文件的传输复制
- 以其delta-transfer算法闻名。
- rsync监听端口:873
- rsync运行模式:C/S
2. 同步方式
- 全量备份:
- 原有的数据全部传送
- 把原来的文件和新的文件一起统一传送
- 全量复制,效率低
3. 增量备份
- 在传输数据之前通过一些算法通过你有的数据和我有的数据进行对比,把不一样的数据通过网络传输,增量复制,效率高。
4. Rsync 命令
rsync [选项] 原始位置 目标位置
选项 |
说明 |
-r |
递归模式,包含目录及子目录中的所有文件。 |
-l |
对于符号链接文件仍然复制为符号链接文件。 |
-v |
显示同步过程的详细(verbose)信息。 |
-z |
在传输文件时进行压缩(compress)。 |
-a |
归档模式,保留文件的权限、属性等信息,等同于组合选项“-rlptgoD” |
-p |
保留文件的权限标记。 |
-t |
保留文件的时间标记。 |
-g |
保留文件的属组标记(仅超级用户使用)。 |
-o |
保留文件的属主标记(仅超级用户使用)。 |
-H |
保留硬链接文件。 |
-A |
保留ACL属性信息。 |
-D |
保留设备文件及其他特殊文件。 |
--delete |
删除目标位置有而原始位置没有的文件。 |
--checksum |
根据对象的校验和来决定是否跳过文件 |
二、配置 rsync 源服务器
1. Rsync 同步源
- 在远程同步任务中,负责发起 rsync 同步操作的客户机称为客户端,而负责响应来自客户端的 rsync 同步操作的服务器称为备份源,也称之为同步源
- 在下行同步(下载)中,同步源负责提供文档的原始位置,发起端应对该位置有读取权限
- 在上行同步中(上传)中,同步源负责提供文档的目标位置,发起端应对该位置具有写入权限
2. Rsync 配置思路
#基本思路
建立rsyncd.conf配置文件、独立的账号文件
启用rsync的 --daemon模式
---------------------------------------------------------------------------------------------
#配置文件 rsyncd.conf
需手动建立,语法类似于Samba配置
认证配置 auth users、secrets file,不加则为匿名
---------------------------------------------------------------------------------------------
#rsync账号文件
采用“用户名:密码”的记录格式,每行一个用户记录
独立的账号数据,不依赖于系统账号
需要对应配置文件模块(使用不同的账号+功能模块,就可以使用不同的同步策略/方式
在使用同步时,我们需要指定账号+功能模块来指定我们同步的策略
--------------------------------------------------