rsync远程同步
rsync简介
是一款快速增量备份工具
remote sync,远程同步
支持本地复制,或者与其他ssh,rsync主机同步
rsync基本介绍
rsync时一款开源的,快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具。并且可以不进行改变原有数据的属性信息,实现数据的备份迁移特性。
Rsync软件适用于unix/linux/windows等多种操作系统平台。
Rsync是一个快速和非常通用的文件复制工具。它能本地复制,远程复制,或者远程守护进程方式复制。它提供了大量的参数来控制其行为的各个方面,并且允许非常灵活的方式来实现文件的传输复制。
以其delta-transfer算法闻名。 rsync监听端口:873 rsync运行模式:C/S
支持同步的方式
全量备份
所有数据全部传送
把原来的文件和新的文件一起统一传送
全量复制,效率低
增量备份
在传输数据之前通过一些算法通过你有的数据和我有的数据进行对比,把不一样的数据通过网络传输
增量复制,效率较高
rsync命令语法
参数使用
-a :归档模式传输, 等于-tropgDl(打包)
-v :详细模式输出, 打印速率, 文件数量等
-z :传输时进行压缩以提高效率
-r :递归传输目录及子目录,即目录下得所有目录都同样传输。
-t :保持文件时间信息
-o :保持文件属主信息
-p :保持文件权限
-g :保持文件属组信息
-l :保留软连接
-P :显示同步的过程及传输时的进度等信息
-D :保持设备文件信息
-L :保留软连接指向的目标文件
-e :使用的信道协议,指定替代 rsh 的 shell 程序
–exclude=PATTERN 指定排除不需要传输的文件模式
–exclude-from=file 文件名所在的目录文件
–bwlimit=100 限速传输
–partial 断点续传
–delete 让目标目录和源目录数据保持一致
使用方法
备份命令
rsync用法与cp类似
mkdir /name #创建目录name
cd /name
touch p h ph #进入name目录后创建p、h、ph文件
rpm -qa | grep rsync #查看rsync安装
rsync -avz /name /opt #将name复制到opt中(将目录本身包含其内部的文件等)
mkdir /1name #创建1name目录
rsync -avz /name/ /1name #将name下的文件复制到1name中 (将此目录下的内容复制)
远程备份
host1(客户端):20.0.0.10
host2(服务器):20.0.0.20
mkdir /back #在host1上创建目录
rsync -avz /name root@20.0.0.10:/back #在host2上将name复制到20.0.0.10的back目录中,用户名为root
cd /backls -lh #在host1上查看复制来的目录
全量备份
touch /name/hp #在host2的name下创建一个hp文件
rsync -avz /name root@20.0.0.10:/back/ #将整个name目录复制过去
cd /back/name
ls -lh #/在host1上查看