rsync数据备份与同步
rsync数据备份
1、备份的目录和方式
1)备份的目的
防止发生灾难将损失降到最低
保证数据恢复可靠运行
2)常见的备份方式
cp:复制数据
tar:压缩归档
rsync:支持远程或者异地数据灾备,可靠性强
2、安装配置rsync
1)安装rsync
yum -y install rsync
2)修改主配置文件
vim /etc/rsyncd.conf
8 uid = nobody //管理用户
10 gid = nobody //管理组
12 use chroot = yes //禁锢rsync源根目录
13 address = 192.168.100.10 //监听IP地址
14 port = 873 //监听端口号
26 [xsh] //同步源模块名
27 path = /xsh //同步源根目录
28 comment = share xsh //同步源说明
29 dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 //指定文件格式不压缩
30 read only = yes //允许读取
31 auth users = bob //验证账户
32 secrets file = /etc/resyn.db //验证数据库
3)创建同步源根目录
mkdir /xsh
echo "aa" > /xsh/a.txt
4)配置验证数据库
vim /etc/resyn.db
bob:pwd@123
chmod 600 /etc/resyn.db
5)守护进程方式运行服务
rsync --daemon
6)监听服务
netstat -anptu | grep rsync
3、rsync命令选项和使用
1)rsync命令选项
-r:递归同步数据,一般针对目录
-a:使用归档模式,相当于arpto
-l:同步符号连接
-p:保留源文件权限
-t:保持源文件时间标记
-o:保持用户标记
-g:保持组标记
-v:显示详细信息
-z:传输数据进行压缩
-H:保持硬链接
-A:保持访问控制列表
--delete:删除同步目标目录数据
2)第一种方式同步
rsync -avz bob@192.168.100.40::xsh ./benet/
3)第二种方式同步
rsync -avz rsync://bob@192.168.100.40/xsh ./benet/
4)加载密码配置文件同步数据
echo "pwd@123" > ./password.txt
chmod 600 ./password.txt
rsync -avz --delete --password-file=./password.txt bob@192.168.100.10::xsh ./benet/
5)本地同步数据
rsync -avz /xsh/ ./benet/
rsync实时数据同步
1、rsync同步数据的方式
1)定期同步数据
同步速度慢
延迟时间长
数据量大
2)实时数据同步
延迟小
速度快
源数据发生改变自动触发同步数据
2、安装inotify
1)更换Linux镜像
解压inotify-tools压缩包
2)配置
[root@centos04 inotify-tools-3.14]# ./configure
3)安装
make && make install
3、inotify实时同步工具类型
1)inotifywatch
临时监控数据变化使用
2)inotifywait
周期实时监控数据变化
4、inotifywait选项类型和监控事件类型
1)监控选项
-e:指定监控事件类型
-r:目录循环监控
-m:持续监控
2)监控事件类型
create:创建
delete:删除
move:剪切
modify:修改文内容
attrib:修改属性
3)实时监控数据
inotifywait -mrq -e move,delete,modify,attrib /xsh/
5、配置实时数据同步
1)修改内核参数
vim /etc/sysctl.conf
2)编写同步脚本
vim rsync.sh
3)免交互式身份验证
ssh-keygen -t RSA
ssh-copy-id -i root@192.168.100.40
4)后台运行脚本
sh rsync.sh &