rsync工具
rsync工具用于同步文件夹数据,他不同于cp命令,他可以处理实时在变更的文件,把源文件目录和目标数据目录同步,对于两个目录相同的部分数据则不会处理。
一、工具概要
命令写法
研究了下SRC是source的缩写,DEST是destination的缩写
rsync -选项 源目录路径 (目标主机用户名)@目标IP地址:目标目录路径
rsync -选项... SRC [SRC]... 目标路径
rsync -选项... SRC [SRC]... [[email protected]]HOST:DEST
rsync -选项... SRC [SRC]... [[email protected]]HOST::DEST
rsync -选项... SRC [SRC]... rsync://[[email protected]]HOST[:PORT]/DEST
rsync -选项... [[email protected]]HOST:SRC [DEST]
rsync -选项... [[email protected]]HOST::SRC [DEST]
rsync -选项... rsync://[[email protected]]HOST[:PORT]/SRC [DEST]
命令常用选项
-a 等同于 -rtplgoD
-r 拷贝目录时要用,类似cp时的-r选项
-v 详细同步的详细信息,让我们知道同步的过程
-l 保留软链接
-L 加上该选项后,同步软链接时会把源文件给同步
-p 保持文件的权限属性
-o 保持文件的属主
-g 保持文件的组别
-D 保持设备文件信息
-t 保持文件的时间属性
--delte 删除DEST中SRC没有的文件
--exclude 过滤指定文件,如--exclude“logs”会把文件名包含logs的文件或者目录过滤掉,不同步
-P 显示同步过程,比如速率,比-v更加详细
-u 加上该选项后,如果目标目录中的文件比原始目录新,则不同步
-z 传输时压缩
操作命令写法示例:
要点:
1、同步文件夹时必须在末尾加上“/”符号
2、重点了解 -a -delte -exclude -u四个选项
二、rsync命令操作示例
1、将passwd文件备份到本地的/tmp/pswd.bak
rsync -aP /etc/passwd /tmp/pswd.bak
2、将passwd文件备份到100.100的/tmp/208.128.bak
rsync -aP /etc/passwd [email protected]:/tmp/208.128.bak
三、通过ssh同步文件夹
3、配置authorized_key实现免登录同步
1、生成ssh密钥对
ssh-keygen
2、分发ssh密钥到备份机器上
ssh-copy-id [email protected]
3、测试结果
rsync -aP /etc/passwd [email protected]:/tmp/208.128.bak
四、通过服务进行目录同步
原文地址:http://blog.51cto.com/11934539/2067174