文章目录
1 rsync是干什么用的
rsync是一个文件同步/备份工具,比如你想把本地文件和远程服务器的文件进行同步,让它们二者始终保持一致,可以使用该命令进行。该命令会对比待同步文件的差异,然后进行增量同步(即,只把本地/远程文件中修改过的文件块同步到远程/本地)。正是因为是增量同步,因此该命令在同步文件时速度较快。
2 rsync和scp有什么区别
rsync是增量备份,只传输有差异的文件块。
scp是全量备份,每次复制,都把全部文件内容复制传输到目标机器。
“sync 和 scp 的最大区别是:rsync 是分块校验+传输,scp 是整个文件传输。rsync 比 scp 有优势的地方在于单个大文件的一小部分存在改动时,只需传输改动部分,无需重新传输整个文件。”
3 rsync简单用法介绍
rsync四种工作方式
rsync的基础语法为:rsync [OPTION…] SRC… [DEST]
支持的参数高达一百多个,最常用的选项组合是"avz",即压缩和显示部分信息,并以归档模式传输。详细的可以参考 博客园-man rsync翻译(rsync命令中文手册),下面是部分参数说明:
-v:显示rsync过程中详细信息。可以使用"-vvvv"获取更详细信息。
-P:显示文件传输的进度信息。(实际上"-P"="--partial --progress",其中的"--progress"才是显示进度信息的)。
-n --dry-run :仅测试传输,而不实际传输。常和"-vvvv"配合使用来查看rsync是如何工作的。
-a --archive :归档模式,表示递归传输并保持文件属性。等同于"-rtopgDl"。
-r --recursive:递归到目录中去。
-t --times:保持mtime属性。强烈建议任何时候都加上"-t",否则目标文件mtime会设置为系统时间,导致下次更新
:检查出mtime不同从而导致增量传输无效。
-o --owner:保持owner属性(属主)。
-g --group:保持group属性(属组)。
-p --perms:保持perms属性(权限,不包括特殊权限)。
-D :是"--device --specials"选项的组合,即也拷贝设备文件和特殊文件。
-l --links:如果文件是软链接文件,则拷贝软链接本身而非软链接所指向的对象。
-z :传输时进行压缩提高效率。
-R --relative:使用相对路径。意味着将命令行中指定的全路径而非路径最尾部的文件名发送给服务端,包括它们的属性。用法见下文示例。
--size-only :默认算法是检查文件大小和mtime不同的文件,使用此选项将只检