1. Rsync 介绍
概述:
Rsync 是 Linux 系统下的数据镜像备份工具,使用快捷增量备份工具 Romote Sync 可以远程同步,可以在不同主机之间进行同步,可实现全量备份与增量备份,保持链接和权限,传输前执行压缩,因此非常适用于架构集中式备份或异地备份等应用。
Rsync 数据备份:
与 SCP 的比较:SCP 无法备份大量数据,而 rsync 可以边复制,边统计,边比较。
Rsync 特性和优点:
(1)可以镜像保存整个目录树和文件系统;
(2)可以很容易做到保持原来文件的权限、时间、软硬链接等;
(3)无须特殊权限即可安装;
(4)快速同步:第一次同步时,Rsync 复制全部内容,但在下一次只传输修改过的文件;
(5)压缩传输:Rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽;
(6)安全:可以使用 SCP、SSH 等方式来传输文件;
(7)支持匿名传输,以便进行网站镜象;
(8)选择性保持:符号链接、硬链接、文件属性、权限、时间等;
备份的分类:
完整备份:每次都备份所有的数据。
差异备份:每次备份和第一次完全备份相比“差异”部分的数据。
增量备份:除第一次备份以外,每次只备份增长的数据。
Rsync 原理:
(1)运行模式和端口:采用 C/S 模式(客户端/服务器模式),Rsync 监听端口是 873;
(2)发起端:负责发起 Rsync 同步操作的客户机叫做发起端,通知服务器需要备份数据;
备份源:负责响应来自客户机 Rsync 同步操作的服务器叫做备份源,需要备份的服务器;
服务端:运行 Rsyncd 服务,一般来说是需要备份的服务器;
客户端:存放备份的数据。
(3)数据同步方式:
推:
目的主机配置为 Rsync 服务器,源主机周期性的使用 Rsync 命令把要同步的目彔推过去(需要备份的机器是客户端,存储备份的机器是服务端)。一台主机负责把数据传送给其他主机,服务器开销很大,比较适合后端服务器少的情况。
拉:
源主机配置为 Rsync 服务器,目的主机周期性的使用 Rsync 命令把要同步的目彔拉过来(需要备份的机器是服务端,存储备份的机器是客户端)。 所有主机定时去找一台主机拉数据,可能就会导致获取数据的速度比较缓慢。
xinetd 管理 Rsync 工作原理:
使用 Rsync 来同步是先通过 xinetd 监听 873 号端口,如果 Rsync 进来的 873 号端口,那么 xinetd 就会通知它所管辖的 Rsync 服务来做回应。