rsync+inotfiy实时备份

rsync简介: rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步

Inotify简介: Inotify 是一种强大的、异步的文件系统事件监控机制,通过Inotify可以监控文件系统中添加、删除,修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况

实验准备:

192.168.2.5 备份rsync server
192.168.2.7 源备份rsync client + inotify

关闭防火墙和selinux

systemctl stop firewalld
setenforce 0

两台都安装rsync

yum -y install rsync

备份端:
1.修改配置文件,注意!此文件去掉注释,不然会有格式问题
vim /etc/rsyncd.conf


uid= root
gid= root
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[mysqldata]
path = /backups #备份路径
comment = mysql data
ignore errors #跳过错误
read only = no #
write only = no #
hosts allow = 192.168.2.7 #备份源ip
list = false
auth users = rsync_user  #用户
secrets file = /etc/rsync.password #密码路径

2.创建认证用户密码文件;修改文件权限

echo "rsync_user:123456" > /etc/rsync.password
chmod 600 /etc/rsync.password

3.创建备份目录

mkdir -p /backups

4.启动rsyncd服务,并设置开机自启

systemctl start rsyncd.service       启动
systemctl enable rsyncd.service   开机自启 

netstat -nltp |grep 873 查看端口
在这里插入图片描述

源备份端:

1.安装epel-release源与服务

yum -y install epel-release
yum -y install inotify-tools rsync

2.创建密码文件,客户端密码文件中,只需要密码即可。同时,密码文件的权限是600

echo "123456" > /etc/rsync.password
chmod 600 /etc/rsync.password

3.编辑inotfiy监控脚本
[root@localhost ~]# vim inotify.sh

#!/bin/bash
ip=192.168.2.5 #备份端ip
src=/data/mysqldata #数据目录
dst=mysqldata
user=rsync_user # 用户
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e modify,delete,create,attrib ${src} | while read file
do
rsync -vzrtopg --delete --progress $src $user@$ip::$dst --password-file=/etc/rsync.password > /dev/null && echo "$src was rsyncd"
done

4.创建目录,执行脚本检测

mkdir -p /data/mysqldata/
sh inotify.sh

新开一个窗口,进行测试

cd /data/mysqldata
touch aaa
touch bbb

切换到备份端查看

ll /backups/mysqldata/

在这里插入图片描述

再切换到源备份端,删除aaa文件

在这里插入图片描述

去备份端查看
在这里插入图片描述
只剩bbb文件了,实时同步成功!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值