Rsync数据同步工具应用指南
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rsync数据同步工具应用指南相关的知识,希望对你有一定的参考价值。
1、Rsync数据同步工具应用指南简介
Rsync的特性:
Rsync的工作方式:
Rsync命令同步选项参数:
本地主机模式示例
远程RPC模式示例
简介
Rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具。可使本地和远程两台或多台主机之间的数据快速复制同步镜像、远程备份的功能。这个功能类似ssh自带的scp命令,但又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝。当然,Rsync还可以在本地主机的不同分区或目录之间全量及增量的复制数据,这又类似cp命令,但同样也优于cp命令,cp每次都是全量拷贝,而rsync可以增量拷贝。一个rsync相当于scp、cp、rm,但是还优于他们每一个命令。 在同步备份数据时,默认情况下,Rsync通过其独特的“quick check”算法,它仅同步大小或者最后修改时间发生变化的文件或者目录,当然也可以根据权限的,属主等属性的变化来进行同步,但需要指定相应的参数,甚至可以实现只同步一个文件里有变化的部分内容,所以,可以快速的实现数据的同步、备份。
Rsync的特性:
1.支持拷贝特殊文件如链接文件、设备等。 2.可以有排除指定文件或目录同步的功能,相当于打包命令tar的排除功能。 3.可以做到保持原文件或目录的权限、时间、软硬链接、属主、属组等所有属性均不改变-p。 4.可以实现增量同步,即只同步变化的数据,因此数据传输效率很高。 5.可以使用rcp、rsh、ssh等方式来配合传输文件(rsync本身不对数据加密)。 6.可以通过socket(进程方式)传输文件和数据(服务端和客户端)。 7.支持匿名或认证的进程模式传输,可以实现方便安全的进行数据备份及镜像。
Rsync的工作方式:
1.单个主机本地之间的数据传输(此时类似于CP命令的功能) 2.借助rcp,ssh等通道来传输数据(此时类似于Scp命令的功能) 3.以守护进程(socket)的方式传输数据(这是Rsync自身重要的功能)
Rsync命令同步选项参数:
语法格式: Local: rsync [OPTION...] SRC... [DEST] Access via remote shell: Pull: rsync [OPTION...] [[email protected]]HOST:SRC... [DEST] Push: rsync [OPTION...] SRC... [[email protected]]HOST:DEST Access via rsync daemon: Pull: rsync [OPTION...] [[email protected]]HOST::SRC... [DEST] rsync [OPTION...] rsync://[[email protected]]HOST[:PORT]/SRC... [DEST] Push: rsync [OPTION...] SRC... [[email protected]]HOST::DEST rsync [OPTION...] SRC... rsync://[[email protected]]HOST[:PORT]/DEST 常用参数说明: -v,--verbose:详细模式输出,传输时的进度等信息。 -z,--compress:传输时进行压缩以提高传输效率,--compress-level=NUM可按级别压缩。 -a,--archive:归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rtopgDl。 -r,--recursive:对子目录以递归模式,即目录下的所有目录都同样传输,注意是小写r。 -t,--times:保持文件时间信息。 -o,--owner:保持文件属主信息。 -p,--perms:保持文件权限。 -g,--group:保持文件属组信息。 -P,--progress:显示同步的过程及传输时的进度等信息。 -D,--devices:保持设备文件信息。 -l,--links:保留软链接。 -e,--rsh=COMMAND:使用的信道协议,指定替代rsh的shell程序。例如:ssh。 --exclude=PATTERN:指定排除不需要传输的文件模式。 --exclude-from=file(文件名所在的目录文件) --bwlimit=PATE(限速) limit socket I/O bandwidth。 生产参数:-avz或者-vzrtopg。####本地传输模式(local-only mode)
本地主机模式示例
[[email protected] ~]# rsync -avzP /etc/hosts /tmp/ #本地模式,将hosts文件同步至/tmp目录 sending incremental file list hosts 158 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1) sent 124 bytes received 31 bytes 310.00 bytes/sec total size is 158 speedup is 1.02
远程RPC模式示例
推送 [[email protected] ~]# rsync -avzP -e ‘ssh -p 22‘ /etc/hosts [email protected]:/tmp #将本地的hosts文件同步到远程主机的/tmp目录下 [email protected]‘s password: sending incremental file list hostssent 124 bytes received 31 bytes 44.29 bytes/sec total size is 158 speedup is 1.02 拉取 [[email protected] ~]# rsync -avzP -e ‘ssh -p 22‘ [email protected]:/tmp/hosts /root/ #将hosts文件从远程主机拉取到本地root家目录 [email protected]‘s password: receiving incremental file list hosts 158 100% 154.30kB/s 0:00:00 (xfer#1, to-check=0/1) sent 30 bytes received 129 bytes 45.43 bytes/sec total size is 158 speedup is 0.99
本文出自 “Char” 博客,请务必保留此出处http://charcce.blog.51cto.com/4255555/1926332
以上是关于Rsync数据同步工具应用指南的主要内容,如果未能解决你的问题,请参考以下文章