Rsync:修订间差异
来自站长百科
(新页面: '''rsync'''是一款非常优秀的文件同步管理软件,它也支持多种操作系统平台,在Linux环境中,rsync有着卓绝的功绩。 category:linux) |
无编辑摘要 |
||
(未显示另一用户的1个中间版本) | |||
第1行: | 第1行: | ||
rsync是[[linux]]系统下的数据[[镜像]]备份工具,[[C/S]]架构,端口873,一个[[开源]]的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量[[备份]],并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像[[服务器]]等应用。 | |||
== 优势 == | |||
1、能够高效地同步整个目录树和文件系统,实现数据镜像。 | |||
2、能够保持文件的原始属性,包括权限、时间戳、软硬[[链接]]等。 | |||
3、安装简单,不需要特殊权限。 | |||
[[ | 4、传输速度快:在初次同步时,rsync会复制所有内容,但在接下来的同步中,只传输修改过的文件,这大大减少了 | ||
5、数据传输量:rsync还支持在传输过程中进行压缩和解压缩,以进一步减少带宽使用。 | |||
6、安全性高:rsync支持通过scp、ssh等方式进行安全的文件传输,也可以直接使用socket连接。 | |||
7、支持匿名传输,这对于网站镜像等应用非常方便。 | |||
== 备份方式 == | |||
* 完整备份(Full Backup):这种方式会复制所有选定的文件,不论其是否已存在于目标位置。这是最基本的备份方式,确保所有数据都被保存。 | |||
* 差量备份(Differential Backup):这种方式只备份自上次完整备份以来发生变化的文件。这意味着,每次执行差量备份时,都会生成一个完整的、与上一次完整备份不同的新版本。 | |||
* 增量备份(Incremental Backup):这种方式只备份自上次任何形式的备份(无论是完整备份、差量备份还是增量备份)以来发生变化的文件。这可以进一步减少需要传输的数据量,但恢复过程可能会更复杂,因为需要按照备份的顺序依次恢复每个增量备份。 | |||
== 备份过程 == | |||
=== 发起端(客户端) === | |||
# 客户端是启动同步操作的一方,它告知服务器端希望进行数据备份。 | |||
# 客户端首先与服务器端建立一个连接,通常是通过[[SSH]](安全shell)或者rsync的原生协议。 | |||
# 在连接建立之后,客户端会发送一个命令给服务器端,指明需要进行同步的路径以及同步选项(例如,是否递归地复制目录、是否保持文件属性等)。 | |||
=== 备份源(服务器端) === | |||
# 服务器端运行着rsync服务,并等待客户端的连接和命令。 | |||
# 当接收到[[客户端]]的命令后,服务器端会分析请求并准备需要同步的数据。 | |||
# 服务器端会进行所谓的“快速检查”(quick check),即不实际传输文件内容,而是比较文件的元数据(如文件大小和修改时间),以确定哪些文件需要被同步。 | |||
=== 数据传输 === | |||
# 一旦确定了需要同步的文件列表,服务器端就会按照客户端的要求开始传输这些文件。 | |||
# rsync使用一种称为“增量传输”的技术,仅传输文件中已更改的部分,而不是整个文件。这可以显著减少需要通过网络传输的数据量。 | |||
# 在文件传输过程中,客户端会负责重新构建目录结构,并确保文件的属性(如权限、[[时间戳]])与原文件一致。 | |||
=== 客户端与服务端的角色 === | |||
# 在rsync操作中,客户端和服务器端的角色是固定的。客户端是发起同步请求的一方,而服务器端是提供数据的一方。 | |||
# 通常,服务器端是指存储原始数据的系统,而客户端则是执行备份操作并将数据保存到备份位置的系统。 | |||
=== 完成同步 === | |||
一旦所有文件都被成功同步,客户端和服务器端的rsync进程会结束,此时客户端拥有了服务器端指定路径的一个最新镜像。 | |||
== 相关条目 == | |||
* [[备份软件]] | |||
* [[BorgBackup]] | |||
* [[Kopia]] | |||
* [[Bacula]] | |||
* [[Duplicati]] | |||
* [[GoodSync]] | |||
* [[Disksync]] |
2024年5月23日 (四) 18:03的最新版本
rsync是linux系统下的数据镜像备份工具,C/S架构,端口873,一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。
优势[ ]
1、能够高效地同步整个目录树和文件系统,实现数据镜像。
2、能够保持文件的原始属性,包括权限、时间戳、软硬链接等。
3、安装简单,不需要特殊权限。
4、传输速度快:在初次同步时,rsync会复制所有内容,但在接下来的同步中,只传输修改过的文件,这大大减少了
5、数据传输量:rsync还支持在传输过程中进行压缩和解压缩,以进一步减少带宽使用。
6、安全性高:rsync支持通过scp、ssh等方式进行安全的文件传输,也可以直接使用socket连接。
7、支持匿名传输,这对于网站镜像等应用非常方便。
备份方式[ ]
- 完整备份(Full Backup):这种方式会复制所有选定的文件,不论其是否已存在于目标位置。这是最基本的备份方式,确保所有数据都被保存。
- 差量备份(Differential Backup):这种方式只备份自上次完整备份以来发生变化的文件。这意味着,每次执行差量备份时,都会生成一个完整的、与上一次完整备份不同的新版本。
- 增量备份(Incremental Backup):这种方式只备份自上次任何形式的备份(无论是完整备份、差量备份还是增量备份)以来发生变化的文件。这可以进一步减少需要传输的数据量,但恢复过程可能会更复杂,因为需要按照备份的顺序依次恢复每个增量备份。
备份过程[ ]
发起端(客户端)[ ]
- 客户端是启动同步操作的一方,它告知服务器端希望进行数据备份。
- 客户端首先与服务器端建立一个连接,通常是通过SSH(安全shell)或者rsync的原生协议。
- 在连接建立之后,客户端会发送一个命令给服务器端,指明需要进行同步的路径以及同步选项(例如,是否递归地复制目录、是否保持文件属性等)。
备份源(服务器端)[ ]
- 服务器端运行着rsync服务,并等待客户端的连接和命令。
- 当接收到客户端的命令后,服务器端会分析请求并准备需要同步的数据。
- 服务器端会进行所谓的“快速检查”(quick check),即不实际传输文件内容,而是比较文件的元数据(如文件大小和修改时间),以确定哪些文件需要被同步。
数据传输[ ]
- 一旦确定了需要同步的文件列表,服务器端就会按照客户端的要求开始传输这些文件。
- rsync使用一种称为“增量传输”的技术,仅传输文件中已更改的部分,而不是整个文件。这可以显著减少需要通过网络传输的数据量。
- 在文件传输过程中,客户端会负责重新构建目录结构,并确保文件的属性(如权限、时间戳)与原文件一致。
客户端与服务端的角色[ ]
- 在rsync操作中,客户端和服务器端的角色是固定的。客户端是发起同步请求的一方,而服务器端是提供数据的一方。
- 通常,服务器端是指存储原始数据的系统,而客户端则是执行备份操作并将数据保存到备份位置的系统。
完成同步[ ]
一旦所有文件都被成功同步,客户端和服务器端的rsync进程会结束,此时客户端拥有了服务器端指定路径的一个最新镜像。