(一)rsync
1、rsync:是一个开源的快速备份工具,可以在不同主机之间同步整个目录
2、在远程同步中,一个是源端,一个是发起端
(1)源端负责文件的原始位置,发起端和源端的文件同步
(二)rsync的特点
1、拷贝文件、拷贝设备
2、连接文件
3、可以保持源文件或者目录的权限不变,时间、软硬链接、所有者、所在组等均可以保持不变
4、可以实现增量同步,只同步发生变化的数据,数据传输效率很高
5、支持匿名认证
(三)rsync的同步方式
1、完整备份,第一次同步都是完整的备份
2、往后的同步都是增量备份(差异备份),只同步变化的数据
(四)rsync的命令格式(Linux自带的软件)
1、命令选项
-r | 递归模式,目录包含子目录里面的所有文件 |
-l | 复制链接文件,软链接 |
-v | 显示同步过程中的详细信息 |
-z | 传输文件时,进行压缩 |
-a | 归档模式,保留文件的权限、属性等等 |
-p | 保留文件的权限标记(所有者,所在组) |
-t | 保留时间标记(时间戳) |
-g | 保留文件的所在组(管理员权限) |
-o | 保留文件的所有者(管理员权限) |
-H | 保留硬链接 |
-D | 保留设备文件和其他特殊文件 |
--delete | 删除目标位置有,但是原始位置没有的文件 |
(五)rsync的同步方式
1、下行同步:从源端同步到客户端
2、上行同步:从客户端同步到源端
(六)实验
1、架构
test1:源端
test2:客户端
(七)下行同步
1、修改配置文件
2、编辑密码文件
(1)赋权
3、创建同步目录
4、同步测试
(1)第一次同步全量同步
rsync -avz backuper@20.0.0.10::test /opt
rsync:发起同步命令
-avz:保留文件权限,v显示详细过程,z同步过程中对文件进行压缩
20.0.0.10::test :模块名称,不是目录名
(2)增量同步
5、免密同步
(八)上行同步
1、调整内核参数
2、安装工具inotify
rsync:同步速度很快,适合同步大文件,可以结合数据库同步使用
(1)inotify:通知接口,可以用来监控文件系统的各种变化情况,文件存取,删除、移动、修改都可
(2)inotify机制和rsync配合使用,既可以通知变化,可以是实现同步
3、配置目录监控
inotifywait -mrq -e modify,create,move,delete /opt/test/
-m:表示持续监控
-r:递归整个目录
-q:信息提示
-e:指定监控的事件,多个事件用逗号隔开
4、同步
5、监控+同步(同步脚本)