rsync+inotify-tools实时备份脚本
1.1 实时备份
1.需求分析:
为什么要实时复制
因为nfs是单点非常的不安全 而通过定时任务备份会造成数据丢失 这是就需要需要实时备份
2实时方案
1).搭建好服务端backup与客户端nfs的rsync服务,使可以备份数据
a.服务端backup配置文件:
[root@rsync-backup ~]# cat /etc/rsyncd.conf
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
uid = rsync
gid = rsync
use chroot = no
max connections = 200
timeout = 300
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
hosts deny = 0.0.0.0/32
secrets file = /etc/rsync.password
[backup]
path = /rsync_backup
auth users = rsync_backup
创建校验文件 并将权限改为600
[root@rsync-backup ~]# cat /etc/rsync.password
rsync_backup:ms
创建用户 rsync 创建目录/ rsync_backup 并将属主属组改为rsync
b.客户端nfs
创建校验文件 并将权限改为600
[root@nfs01 /backup]# cat /etc/rsync.password
ms
创建要备份的目录/backup
2.)在nfs上搭好inotify-tools 使其可以监控事件
上文已将其安装,这里测试命令
端口1监控
[root@nfs01 /backup]# inotifywait --format '%w%f' -rmqe create,delete,close_write /backup/
/backup/a.txt
端口2测试
[root@nfs01 /backup]# rm -f a.txt
3)编写脚本 使当所监控的文件夹有事件发生时 立即备份
#!/bin/bash
inotifywait --format '%w%f' -rmqe create,delete,close_write /backup/|\
while read line
do
rsync -az /backup/ rsync_backup@backup::backup --password-file=/etc/rsync.password
done
检测有效
4)脚本的优化
#!/bin/bash
inotifywait --format '%w%f' -rmqe create,delete,close_write /backup/|\
while read line
do
if [ -e $line ];then
rsync -az $line rsync_backup@backup::backup --password-file=/etc/rsync.password
fi
cd /backup/ && rsync -az /backup/ --delete rsync_backup@backup::backup --password-file=/etc/rsync.password
done
if 判断如果文件存在 将新创建的文件备份到backup服务器上
如果不存在 无差异备份一下
额外补充
watch ls /rsync_backup/ 每个2秒执行一下ls命令
将脚本放入后台执行[root@nfs01 /server/scripts]# sh nfs-backup.sh &
[1] 9137
rsync+inotify-tools实时备份脚本的更多相关文章
- 搭建rsync+inotify实现实时备份
一.环境搭建说明 系统环境 CentOS7.5 备份节点 主机名:backup01 IP地址:172.16.2.41 数据节点 主机名:nfs-master IP地址:172.16.2.31 二.在备 ...
- rsync + inotify 数据实时同步
一.rsync介绍 rsync英文全称为Remote synchronization,从软件的名称就可以看出来,Rsync具有可是本地和远程两台主机之间的数据快速复制同步镜像.远程备份的功能,这个功能 ...
- linux rsync +inotify 实现 实时同步
前言: rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rs ...
- rsync+inotify实现实时同步案例--转
转自:http://chocolee.blog.51cto.com/8158455/1400596 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐 ...
- rsync简介与rsync+inotify配置实时同步数据
rsync简介 rsync是linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. rsync特性 rsync ...
- centos 配置rsync+inotify数据实时同步2
一.Rsync服务简介 1. 什么是Rsync 它是一个远程数据同步工具,它在同步文件的同时,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“rsync算法”来使本地和远程两个主机 ...
- centos 配置rsync+inotify数据实时同步
何为rsync? 定义: rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,非常适用于异地备份 何为源端和发起端? 在远程同步过程中,负责发起rs ...
- rsync+inotify实现实时同步案例
转自:http://chocolee.blog.51cto.com/8158455/1400596 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐 ...
- Rsync+inotify实现实时同步
1.1 inotify介绍 inotify是一种强大的.细粒度的.异步的文件系统事件控制机制.linux内核从2.6.13起,加入了inotify支持,通过inotify可以监控文件系统中添加.删除. ...
随机推荐
- 《HarmonyOS设备开发入门手册》
HarmonyOS设备开发入门手册-更新 [欢迎大家点击下载] 作者:连志安 想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://harmonyos.51cto. ...
- 廖师兄springboot微信点餐开发中相关注解使用解释
package com.imooc.dataobject;import lombok.Data;import org.hibernate.annotations.DynamicUpdate;impor ...
- ios、安卓前端兼容性1
2.input框聚焦,ios出现outline或者阴影,安卓显示正常 解决方法 input:focus{outline:none} input:{-webkit-appearance: none;} ...
- kettle——转换案例
把stu1的数据按id同步到stu2,stu2有相同id则更新数据 (1)在mysql中创建两张表 mysql> create database kettle; mysql> use ke ...
- 一些 git 常用的命令
1.本地命令 查看状态 -git status 添加文件 -git add . 提交文件 -git commit -m "(comment)" 查看历史key -git reflo ...
- NProgress使用教程
GitHub地址 rstacruz/nprogress: For slim progress bars like on YouTube, Medium, etc (github.com) 演示网站 N ...
- Linux提权(持续更新)
利用/etc/passwd提权 个人认为,这种提权方式在现实场景中难以实现,条件太过苛刻,但是建立Linux下的隐藏账户是个不错的选择,灵感来自:https://www.hackingarticles ...
- 阿里技术专家深入讲解,SpringMVC入门到进阶,看这一篇就够了
前言 SpringMVC是一个实现了Web MVC设计模式的轻量级Web框架.它与前辈Struts 2框架一样,都属于MVC框架,因为其使用和性能等方面比Struts 2更加优异,所以Spring M ...
- 考研党其实可以用思维导图MindManager做考研复习计划
近年由于就业压力,个人学历提升等各种原因,考研的人数越来越多了,相对难度也越来越大了,尽管今年研究生招生规模同比去年增加18.9万,但也无法掩盖考研的竞争逐年激烈. 身为考研大军中的预备选手之一,小编 ...
- guitar pro系列教程(二):Guitar Pro主界面之记谱功能的详细解析【下】
本章节我们接着上一章节继续讲解关于guitar pro主界面的记谱功能里的符号功能.有兴趣的朋友可以进来一起学习哦. 首先我们看下图,这是点击按钮便会弹出的一个窗口,进入这个窗口,我们会看到" ...