rsync工具使用详解

rsync是linux/unix系统下的文件同步和数据传输工具,它采用“rsync算法”实现主机之间文件的同步。

rsync的主要特点:
1,rsync可以再中断传输之后恢复传输
2,rsync只传输源文件和目标文件之间不一致的部分
3,rsync可以执行完整或增量备份
4,可以使用基于ssh等方式传输文件
5,可以保持原有文件的所有属性信息
 
rsync的命令格式:
rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
 
rsync [OPTION]... [USER@]HOST:SRC DEST
 
rsync [OPTION]... SRC [SRC]... DEST
 
rsync [OPTION]... [USER@]HOST::SRC [DEST]
 
rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
 
rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DES
 
常用选项:
-v, --verbose 详细模式输出
-q, --quiet 精简输出模式
-z,在传输时对备份文件进行压缩处理
-c, --checksum 打开校验开关,强制对文件传输进行校验
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive 对子目录以递归模式处理
-R, --relative 使用相对路径信息
-l, --links 保留软链结
-H, --hard-links 保留硬链结
-p, --perms 保持文件权限
-o, --owner 保持文件属主信息
-g, --group 保持文件属组信息
-D, --devices 保持设备文件信息
-t, --times 保持文件时间信息
 
-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
--backup-dir 将备份文件(如~filename)存放在在目录下。
-suffix=SUFFIX 定义备份文件前缀
 
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
 
--rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
--password-file=FILE 从FILE中得到密码
--config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件
--port=PORT 指定其他的rsync服务端口
--progress 在传输时显示传输过程
--delete 删除那些DST中SRC没有的文件,即保证客户端和服务器目录内容的完全一致
--existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
--rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
--exclude 指定不需要传输的文件类型
 
rsync的四种工作模式:
一,本地shell应用模式
主要用于复制本地指定文件到本地另一个目录中
例1:复制指定的文件,到一个目录中
# rsync -av *.sh /tmp/
例2:复制整个目录及其中的文件到一个目录中
# rsync -av haha test/
例3:复制目录中的整个文件到另一个目录中(只有文件,没有haha目录)
# rsync -av haha/ test
注:目标参数末尾的斜杠没有任何作用

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/3670e62264959dde763b2aa3a26cd381.html