inotify+rsync的初步配置

inotify的简单配置 

Linux内核从2.6.13开始,引入了inotify机制。通过intofity机制,能够对文件系统的变化进行监控,如对文件进行创建、删除、修改等操作,可以及时通知应用程序进行相关事件的处理。这种响应处理机制,避免了频繁的文件轮询任务,提高了任务的处理效率。

一、查看inotify默认参数

sysctl -a|grep -e max_queued_events -e max_user_watches -e max_user_instances

二、修改inotify参数

1、命令修改sysctl -w xxx

2、文件修改

vim /etc/sysctl.conf #添加如下代码,数据按实际情况设置,此处为默认值

fs.inotify.max_user_instances = 128

fs.inotify.max_user_watches = 8192

fs.inotify.max_queued_events = 16384

fs.epoll.max_user_watches = 199864

3、参数说明

max_user_instances:每个用户创建inotify实例最大值

max_queued_events:inotify队列最大长度,如果值太小,会出现错误,导致监控文件不准确

max_user_watches:要知道同步的文件包含的目录数,可以用 find /data/ -type d|wc -l 统计,必须保证参数值大于统计结果。

三、创建实时监控脚本。

/usr/bin/inotifywait -mrq --timefmt ‘%Y/%m/%d-%H:%M:%S‘ --format ‘%T %w %f‘ -e modify,delete,create,move,attrib /data/ 
 1 #!/bin/bash
 2
 3 inotify=/usr/bin/inotifywait
 4
 5 $inotify -mrq --timefmt ‘%Y/%m/%d-%H:%M:%S‘ --format ‘%T %w %f‘ -e create,close_write,delete /data/ | while read file
 6
 7 do
 8
 9   cd /data/ &&
10
11   rsync -az ./ --delete [email protected]192.168.1.237::backup --password-file=/etc/rsync.pass wd
12
13 done

inotifywait常用参数:

  1. --timefmt 时间格式    %y年 %m月 %d日 %H小时 %M分钟
  2. --format 输出格式      %T时间 %w路径 %f文件名
  3. -m 始终保持监听状态,默认触发事件即退出。
  4. -r 递归查询目录
  5. -q 打印出监控事件

-e 定义监控的事件,可用参数:

  1. open 打开文件
  2. access 访问文件
  3. modify 修改文件
  4. delete 删除文件
  5. create 新建文件
  6. attrb  属性变更
时间: 2024-10-17 10:28:32

inotify+rsync的初步配置的相关文章

inotify+rsync双向同步

inotify+rsync实现双向自动同步文件,这个在实验是由于本人所在公司一项业务需要实现双向同步,inotify+rsync的大多数配置都是单向实施的,这个双向实验经过验证是可行的,对于没有共享存储的但是又需要实现数据双向一致性的场景还是比较实用的. Inotify+rsync实现双向同步实验 机器地址:192.168.14.202 192.168.14.203 目录为/var/www/html/web202和/var/www/html/web203目录的所有者和所属组为rsync 用户为:

lsyncd 代替inotify+rsync 配置

一.lsyncd介绍 二.lsyncd安装 三.lsyncd配置说明 四.lsyncd同步测试 1.lsyncd 介绍 Lsyncd 监视本地目录树事件监控器接口( inotify或fsevents ) .通过秒级事件聚合,然后生成一个(或多个)进程来同步变化.默认情况下为结合rsync. Lsyncd轻重量镜解决方案,安装不需要新的文件系统或块设备相对容易,并且不妨碍本地文件系统的性能. Lysncd 实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2

Rsync+inotify 实时数据同步 inotify master 端的配置

强大的,细致的,异步的文件系统事件监控机制.Linux 内科从 2.6.13 起支持 inotify Inotify 实现的几款软件:Inotify,sersync,lsyncd ※Inotify 实施准备前提:rsync daemon 服务配置成功,并且客户端可以推送和拉取数据,才能够 成功配置 inotify 服务 #显示以下三个文件则证明支持 inotify 服务 2.6.32-358.el6.x86_64 [[email protected] ~]# ls -l /proc/sys/fs

配置inotify+rsync实时同步

对rsync服务及命令不熟悉的,可以参考博文通过rsync实现远程同步这里就不多说了! Linux内核从2.6.13版本开始就已经提供了inotify通知接口,用来监控文件系统的各种变化情况,如文件存取.删除.移动.修改等.利用这一机制,可以非常方便的实现文件异动告警.增量备份,并针对目录或文件的变化及时作出响应. 将inotify机制与rsync工具相结合,可以实现出发时备份(实时同步)--只要原始位置的文档发生变化,则立即启动增量备份,否则处于静默等待状态,如图所示:这样,就避免了按固定周期

linux inotify+rsync

一.系统环境: centos 6.5_64 更新源服务器:192.168.10.11 目的服务器:192.168.10.10 二.目的服务器配置:192.168.10.10 (rsync服务端): 1.检查rsync是否安装 rpm -qa|grep rsync 如果没有发装,执以下命令进行安装 yum -y install rsync 2.定义rsync配置文件/etc/rsyncd.conf 192.168.10.11: cat >> /etc/rsyncd.conf << E

sersync+rsync实时同步配置案例

目前业内比较靠谱的同步解决方案有: rsync+inotify-tools,Openduckbill+inotify-tools和rsync+sersync 前两者由于是基于脚本语言编写,所以规范程度,执行效率相对rsync+sersync就稍微弱一些. sersync是使用c++编写,基于boost1.43.0,inotify api,rsync command开发,主要用于服务器同步,web镜像等功能.其对linux系统文件系统产生的临时文件和重复的文件操作能够进行过滤,所以在结合rsync

CentOS 6.5 inotify+rsync做实时同步-企业实例(1.0)

inotify+rsync实时同步起源及简介 inotify服务机制 inotify实施准备 inotify配置是建立在rsync服务的基础上 inotify,sersync,lsyncd sersync功能更多,可以做各种过滤,但从性能上看,通过测试得出inotify性能更高,每秒钟能同步好几百张图片,inotify 150张就不能实时了 实施前检查rsync daemon是正常 [[email protected] oldboy]# ps -ef |grep daemon root     

rsync安装与配置使用 数据同步方案(centos6.5)

rsync + crond   ==定时数据同步 sersync(inotify)  + rsync  ==实时数据同步,利用rsync实现 ##应用场景 ..1 主备服务器之间同步数据定时    ==配合crond sersync inotify等实现 ##rsync的安装配置与使用 服务端 ..1 安装 centos6.5已经安装了rsync rpm -qa | grep rsync 如果没有,用下面两种方式之一安装 yum install rsync rpm -ivh rsyn.xxxxx

inotify+rsync数据同步

安装常用工具: yum install tree nmap sysstat dos2unix lrzsz -y 设置两台机器主机名 hostname inotify hostname rsync 这里测试,就直接hostname修改了,要使永久生效,还需要修改 /etc/network/sysconfig和/etc/hosts文件 rsync有三种模式: 1.单个主机的本地数据传输(此事类似于cp命令) 例如:rsync -avz /etc/hosts /home/ 2.借助rpc.ssh等通道