一.搭建备份服务器(rsync)
a.服务介绍
远程数据同步工具
-
- 开源,快速 ,多功能,可实现全量及增量的本地或远程数据同步的优秀工具
- 增量:差异备份
- 全量:全部备份
rsync Remote synchronization
-
- 功能1:本地连个目录之间拷贝 cp
- 功能2:两台主机之间互相拷贝 scp 全量以及增量的拷贝
- 功能3:删除功能 rm
既可以同步内容,也可以同步属性
-
- centos5 rsync2.x 所有文件做比对,然后同步
- centos6 rsync3.x 一边比对,一边同步
b.特性介绍
- 拷贝特殊文件如链接文件,设备等
- 可以排除指定文件或则目录同步的功能,相当于tar打包命令的排除功能
- 可以做到保持原文件或则目录的权限,时间,软硬链接,属主,组等所有属性均不改变-p
- 可以实现增量同步,即只同步发生变化的数据,因此数据传输效率很高,tar -N
- 可以使用rcp,rsh,ssh等方式来配合传输文件(rsync本身不对数据加密)
- 可以通过socker(进程方式)传输文件和数据(服务端和客户端)
- 支持匿名或认证(无须系统用户)的进程模式传输,可实现方便安全的进行数据的备份及镜像
c.企业工作场景
定时备份:
- cron+rsync
- rsync
实时备份:
- rersync+rsync
- inotify+rsync
- lrsyncd+rsync
local cp
ssh
- pull
- push
daemon(进程)873端口
- pull
- push
rsync -avzrtopgPDI --delete /etc/hosts /tmp
a:所有
v:详细模式输出,传输时的进度等信息
z:传输时进行压缩
r:递归
t:保持稳健时间信息
o:保持文件属主信息
p:保持文件权限
g:保持文件属组信息
P:显示同步过程以及传输时的进度
D:保持设备文件信息
I:--link保留软连接
e: --rsh=command 使用的信道协议,指定替代rsh的shell程序。例如:ssh
--exclude=PATTERN 指定排除不需要传输的文件模式(和tar参数一样)
--exclude-from=file(文件名所在的目录文件)(和tar参数一样)
--delete 让目标目录SRC和源目录数据DST一致
- 考虑限速
- 考虑业务低估