# inotify 软件
# 安装:通过epel,安装在客户端
# 功能:实时监控目录下文件的更变
# 监控事件:创建、删除、修改、移动...
# 安装位置:客户端
# 安装命令:
sudo apt-get install inotify-tools
# 源码安装:
wget --no-check-certificate http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
tar xzvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14
./configure --prefix=/usr
make
make install
# 安装后的应用程序:inotifywait、inotifywatch # inotifywait
# 选项:
# -r:递归,对目录中的子目录也进行监控
# -q:仅仅打印少量信息(仅仅打印监控的事件)
# -m:一直处于监控状态
# -d:和-m一样,区别是-d是后台运行
# -o file:将监控到的事件输出到一个文件中(默认输出到终端)
# -s:将错苏信息输出到系统日志中(默认输出到终端)
# --excludei:忽略文件名的大小写
# -e <event>:监控指定的事件
# access:访问事件
# modify:编辑事件
# attrib:修改文件属性事件(修改文件元数据)
# close_write:当文件从写模式下关闭的时候,会触发该事件
# close_nowrite:当文件从读模式下关闭的时候,会触发该事件
# close:无论以什么方式打开的文件,在关闭的时候都会触发该事件
# open:当文件被打开时,都会触发该事件
# moved_to:当一个文件移动到被监控的目录下,就会触发该事件
# moved_from:当一个文件从被监控目录下移走的时候,就会触发该事件
# moved_sekf:在监控目录下执行移操作,就会触发该事件
# create:创建文件的时候触发
# delete:删除文件的时候触发 # --timefmt <fmt>:指定时间显示的格式(和date格式一样)
# --format <fmt>:
# %f:输出发生事件的名称
# %w:输出繁盛事件的文件所在目录的绝对路劲
# %e:输出发生时间的名称(多个事件以空格隔开)
# %Xe:和%e唯一区别是多个事件以X隔开
# %T:输出发生事件的时间(时间格式由--timefmt指定) # 例子:
inotifywait -mrq --timefmt "%F%T" --format "%T %w %f" -e create,delete,modify /test # 实时同步脚本
#!/bin/bash
#
prog="inotifywait"
events="create,delete,modify,attrib"
iopt="-mrq" lpath="/test/" rhost="10.0.0.41"
vuser="vuser1"
secfile="/etc/rsync.passwd"
ropt="-az --delete"
modename="web1" $prog $iopt --format "%T %w %f" -e $events $lpath | while read line
do
rsync $lpath $line $vuser@$rhost::$modename --password-file=$modename
done # sersync+rsync实时同步
# sersync其实就是对inotify进行了一个包装,将配置信息以xml的方式进行配置,并进行了中文翻译
# sersync会比自己配置方便一点。还可以设置多线程模式。
# 安装示例:https://www.cnblogs.com/mouseleo/p/12587126.html

inotify 目录文件变更实时监控的更多相关文章

  1. Window Linux下实现指定目录内文件变更的监控方法

    转自:http://qbaok.blog.163.com/blog/static/10129265201112302014782/ 对于监控指定目录内文件变更,window 系统提供了两个未公开API ...

  2. nfs+rsync+inotify实现文件的实时同步

    准备三台服务器进行测试: nfs_server:192.168.12.110 web_server:192.168.12.111 rsync_server:192.168.12.112 网络规划图: ...

  3. linux实时监控并实时备份数据(rsync)

    目录 一:rsync实时监控备份流程 1.安装rsync(服务端 与 客服端)守护进程模式 2.修改配置文件(服务端) 3.解析配置内容 4.创建系统用户 5.创建密码文件 6.授权(必须授权为600 ...

  4. 3、架构--cp、scp、rsync、实时监控与同步

    笔记 1.晨考 1.VPN的搭建步骤 2.vpn中的iptables是什么作用? 网络转发 2.昨日问题 1.yum源问题 2.VPN链接正常,但是没办法通过172 3.VPN链接时,出现了DNS错误 ...

  5. Spark+Kafka实时监控Oracle数据预警

    目标: 监控Oracle某张记录表,有新增数据则获取表数据,并推送到微信企业. 流程: Kafka实时监控Oracle指定表,获取该表操作信息(日志),使用Spark Structured Strea ...

  6. rsync+inotify 实现服务器之间目录文件实时同步(转)

    软件简介: 1.rsync 与传统的 cp. tar 备份方式相比,rsync 具有安全性高.备份迅速.支持增量备份等优点,通过 rsync 可 以解决对实时性要求不高的数据备份需求,例如定期的备份文 ...

  7. java利用WatchService实时监控某个目录下的文件变化并按行解析(注:附源代码)

    首先说下需求:通过ftp上传约定格式的文件到服务器指定目录下,应用程序能实时监控该目录下文件变化,如果上传的文件格式符合要求,将将按照每一行读取解析再写入到数据库,解析完之后再将文件改名. 一. 一开 ...

  8. unison + inotify 实现文件实时双向同步部署步骤

    unison + inotify 实现文件实时双向同步部署步骤 一. Unison简介 Unison是Windows.Linux以及其他Unix平台下都可以使用的文件同步工具,它能使两个文件夹(本地或 ...

  9. Rsync + inotify 实现文件实时同步

    Rsync 用来实现触发式的文件同步. Inotify-tools是一套组件,Linux内核从2.6.13版本开始提供了inotify通知接口,用来监控文件系统的各种变化情况,如文件存取.删除.移动等 ...

随机推荐

  1. socket套接字补充、操作系统发展史、进程

    目录 socket套接字之UDP协议 操作系统的发展史 手工操作 批处理系统 联机批处理系统 脱机批处理系统 多道技术 进程理论 并发与并行 同步与异步 阻塞与非阻塞 同步异步与阻塞非阻塞总结 soc ...

  2. 『忘了再学』Shell基础 — 23、其他环境变量配置文件

    目录 1.注销时生效的环境变量配置文件 2.其他配置文件 3.Shell登录信息相关文件 (1)/etc/issue文件说明 (2)/etc/issue.net文件说明 (3)/etc/motd文件说 ...

  3. 为什么 SQL 语句使用了索引,但却还是慢查询?

    一.索引与慢查询 聊一聊索引和慢查询,经常遇到的一个问题:一个SQL语句使用了索引,为什么还是会记录到慢查询日志之中? 为了说明,创建一个表t,该表3个字段,一个主键索引,一个普通索引 CREATE ...

  4. JMeter - 生成随机数/随机字符串/随机变量/随机日期

    1. Random - 随机数 1.1 作用 1.2 声明 1.3 例子 2. __RandomDate - 随机日期 2.1 作用 2.2 声明参数 2.3 例子 3. RandomString - ...

  5. 在Rally上,上传测试报告(文件)到每个Test Case方法

    本文链接: https://www.cnblogs.com/hchengmx/p/how-to-upload-test-result-to-test-case-result-in-rally.html ...

  6. 『忘了再学』Shell基础 — 30、sed命令的使用

    目录 1.sed命令说明 2.行数据操作 (1)查看文件中的数据 (2)删除文件中的数据 (3)向文件中追加数据 (4)向文件中插入数据 (5)修改文件中的多行数据(删除,追加,插入) (6)替换文件 ...

  7. 批处理(bat、cmd)命令总结

    2021-07-21 初稿 注释与回显 rem 回显 @取消单行回显 rem 注释有三种方式 :: %content% rem rem @取消单行回显,echo off取消后面的回显 @echo of ...

  8. 想看,但电脑没网怎么办,python教你保存整本成TXT~

    各位大佬好鸭!又是我小熊猫啦咱这次直接上代码 开始之前先解释下: 模块: requests >>> pip install requestsparsel >>> p ...

  9. TCP和UDP协议的区别以及原理

    参考文章https://blog.csdn.net/weixin_38483133/article/details/123864253

  10. linux下的nginx日志自动备份压缩--日志切割机

    部署完毕nginx之后,发现自己的/var/log/nginx/*log的日志不会压缩,一直都是一个文本写日志, 时间久了,日志文件内存过于增加,将会导致在日志添加过程效率降低,延长时间. 默认安装的 ...