Centos 7 下 配置 Rsync 以及 rsync+inotify 实时同步

rsync介绍

rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支
持增量备份,保持链接和权限,且采用优化的同步算法,在传输前执行压缩,因此非
常适用于异地备份、镜像服务器等应用。

rsync的官方站点是http://rsync.samba.org/,由 Wayne Davison进行维护。作为一
种最常用的文件备份工具,rsync往往是 Linux和UNIX系统默认安装的基本组件之一

rsync 源服务器 配置

rpm -q rsync 可以查看系统自带了rsync服务vim /etc/rsyncd.comuid = nobody     gid = nobodyuse chroot = yes    ##禁锢在源目录address = 192.168.x.x     ##监听地址port 873     ##监听端口log file = /var/log/rsyncd.log   ##日志文件位置pid file = /var/run/rsyncd.pid    ##进程ID位置hosts allow = 192.168.x.0/24    允许访问的客户机地址[wwwroot]      ##共享模块名称path = /var/www/html     ##源目录的实际路径comment = www.abc.cnread only = yes     ##是否为只读dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2     ##同步时不再压缩的文件类型auth users = backuper    ##授权账户secrets file = /etc/rsyncd_users.db   ##存放账户信息的数据文件vim /etc/rsyncd_users.dbbackuper:abc123     ##格式为   账户名:密码chmod 600 /etc/rsyncd_users.db    ##因为账户信息明文存放,调整文件权限避免账号信息泄露rsync --daemon    ##启动rsync服务netstat -ntap |grep rsyncrsync以873端口开启rsync 源服务器就配置完成了

使用rsync 备份工具

在发起端 有两种方式可以访问rsync同步源,并下载到本地 /opt 目录下进行备份格式一:
rsync -avz backuper@192.168.x.x::wwwroot /opt/   格式二:
rsync -avz rsync://backuper@192.168.x.x/wwwroot /opt/这两种方法都需要进行交互 输入密码后即可进行备份。为了在同步过程中不需要输入密码,需要创建一个密码文件。
vim /etc/server.pass
abc123rsync -az --delete --password-file=/etc/server.pass backuper@192.168.x.x::wwwroot /opt
## 免交互进行备份

配置 rsync + inotify 实时同步

工作原理

Linux内核从2.6.13版本开始提供了 inotify通知接口,用来监控文件系统的各种
变化情况,如文件存取、删除、移动、修改等。利用这一机制,可以非常方便地实现
文件异动告警、增量备份,并针对目录或文件的变化及时作出响应。

将rsync工具与inotify机制相结合,可以实现触发式备份(实时同步)—只要
原始位置的文档发生变化,就立即启动增量备份操作,否则处于静默
等待状态。这样,就避免了按固定周期备份时存在的延迟性、周期过密等问题。

实验过程


调整inotify内核参数
vim /etc/sysctl.conffs.inotify.max_queued_events = 16384   ##监控事件队列
fs.inotify.max_user_instances = 1024    ##最多监控实例数
fs.inotify.max_user_watches = 1048576    ##每个实例最多监控文件数tar xzvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14./configuremake && make installinotifywait -mrq -e modify,create,move,delete /var/www/html/
## -m表示持续监控  -r 表示递归整个目录  -q 表示简化输出信息  -e 用来指定要监控哪些事件此时在 /var/www/html 下的操作会被同步监控并显示接下来编写触发时同步脚本vim inotify.sh#!/bin/bash
INOTIFY_CMD="inotifywait -mrq -e modify,create,attrib,move,delete /var/www/html/"
RSYNC_CMD="rsync -azH --delete --password-file=/etc/server.pass /var/www/html/ backuper@192.168.x.x::wwwroot/"
$INOTIFY_CMD | while read DIRECTORY EVENT FILE
doif [ $(pgrep rsync | wc -l) -le 0 ] ; then$RSYNC_CMDfi
donechmod +x inotify.sh此脚本用来检测本机 /var/www/html 的变动情况,一旦有更新触发 rsync同步操作,上传备份至 192.168.x.x 的 /var/www/html 目录下

转载于:https://blog.51cto.com/13625924/2151510

Centos7 下 配置 rsync 以及 rsync+inotify 实时同步相关推荐

  1. rsync同步操作 、 发布rsync共享 、 inotify实时同步 、 Split分离解析

    虚拟机A     1. 将防火墙状态设置为trusted   2.SELinux当前修改为permissive   3.SELinux永久状态修改为permissive     4.清空Yum缓存,检 ...

  2. rsync数据同步+inotify实时同步

    rsync数据同步+inotify实时同步 一.rsync 1.rsync概述 2.rsync优缺点 3.rsync同步源 4.rsync命令 5.配置rsync 二,inotify实时同步 1.调整 ...

  3. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步

    1.什么是 Rsync? Rsync 是一个开源的快速备份工具,是Linux和UNIX操作系统默认安装的组件之一,可在不同主机间镜像同步整个目录,并支持增量备份文件传输,保持链接和权限,采用优化的同步 ...

  4. rsync同步操作 inotify实时同步 cobbler装机平台 DNS主从结构

    目录 rsync同步操作 rsync基本使用 rsync+ssh同步:远程同步 实时同步 inotify实时同步 inotifywait监控 cobbler装机平台 cobbler简介 基本概念: 装 ...

  5. rsync下行同步与inotify实时同步

    rsync下行同步与inotify实时同步 一.rsync工具 二.定时同步与实时同步 三.配置rsync源 四.rsync命令 五.配置源的两种表示方法 六.inotify 七.配置rsync下行同 ...

  6. rsync同步+inotify实时同步部署

    目录 一.rsync简介 二.rsync同步源 三.配置rsync源 1.基本思路 2.rsync命令 3.配置源的两种表达方式 4.免交互格式 四.配置rsync远程同步 1.关防火墙.安装相应的软 ...

  7. rsync下行同步+inotify实时同步部署

    目录 rsync简介 rsync同步方式 rsync特性 rsync与cp.scp对比 rsync同类服务 rsync源服务器的关系 配置rsync源 rsync命令 rsync本地复制实例 配置源的 ...

  8. Linux下Rsync+Inotify-tools实现数据实时同步

    说明: 操作系统:CentOS 5.X 源服务器:192.168.21.129 目标服务器:192.168.21.127,192.168.21.128 目的:把源服务器上/home/www.osyun ...

  9. Rsync下行同步+inotify实时同步介绍和部署

    Rsync下行同步+inotify实时同步介绍和部署 一.Rsync 1.Rsync同步源 2.Rsync服务器 3.同步方式 二.配置rsync源 三.rsync命令 四.配置源的两种表示方法 1. ...

最新文章

  1. 学Python的好处有哪些?
  2. hive mysql 远程_Hive配置 远程连接MySQL
  3. 用相对路径从一个项目跳转到另一个项目_如何用2天时间,从0到N的完成一个学习项目设计?...
  4. 海盗云商插件_推销自己的海盗猫王运营商
  5. Java EE 7 / JAX-RS 2.0 – REST上的CORS
  6. 3dmark for android,Android版3DMark首测
  7. Tecplot如何保存frame style 并调用frame style
  8. 一步步编写操作系统 11 实模式下程序分段的原因
  9. oracle 导入导出指定表
  10. 通俗理解协方差与相关系数
  11. 工程师软技能6:理财人生精神
  12. c语言打程序时会遇到什么问题,Sublime text3 实现C语言编译运行以及过程中可能遇到的问题...
  13. 2016年9月份工作知识点汇总
  14. 牛客网 牛客练习赛7 A.骰子的游戏
  15. gdi win7奔溃_gdiplus.dll 32/64位
  16. java 压力测试_记一次完整的java项目压力测试
  17. 给俺老婆的一封信(太有才了!)
  18. JS实现双十一倒计时抢购效果
  19. 3D游戏引擎入门课程——场景管理
  20. 迅速提高产品用户体验、交互、界面设计的几个绝妙方法

热门文章

  1. ansys添加力矩_ansys中的workbench怎么添加力矩
  2. smarty mysql_Smarty处理mysql查询数组
  3. 打牌软件可以控制吗_使用crm软件真的可以帮助企业省钱吗
  4. Java项目:小蜜蜂扩音器网上商城系统(java+JSP+Servlet+JDBC+Ajax+mysql)
  5. 【数据库】 兴唐第二十七节课只sql注入
  6. Spring之注解方式实例化Java类
  7. Tomcat软件的目录结构、作用
  8. pytorch python区别_pytorch源码解析:Python层 pytorchmodule源码
  9. ant 修改组件默认样式属性
  10. vconsole 调试 查看LOG VUE在手机上调试 手机查看h5的日志