Inotifywait解决监控子目录树的情况

 

inotifywait是一个可以实时监控文件变动的工具。它利用linux内核中的inotify机制实现监控功能,在内核高于2.6.13的版本中,据说不需要软件的安装包。(本实验采用centos7.3

wKiom1l4c1GArMAsAAAoC0_H1Qo583.jpg-wh_50

前提:系统支持inotify

wKioL1l4dC2zbUUUAAAbXBoJhiw979.jpg-wh_50

 

 inotifywait 命令的常用参数包括:

   -m, --monitor       保持一直监听

   -r, --recursive       若有多级目录循环递归每一层。

   -q, --quiet          静默式运行

-e, --event  create,move,delete,modify

 

  • 安装inotify-tools安装包

1、安装gccmake编译包;

Inotifywait解决监控子目录树的情况_第1张图片

 

2、下载inotify

http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz

 

3、解压缩

wKiom1l4dGTBwCzWAAAP4ocgTv4075.jpg-wh_50

 

4、编译

Inotifywait解决监控子目录树的情况_第2张图片

Inotifywait解决监控子目录树的情况_第3张图片

Inotifywait解决监控子目录树的情况_第4张图片

 

 

5、验证

wKioL1l4dJ_RXhZdAAAwQ3VRmro875.jpg-wh_50

 

  • 在主控制器上操作

1、备份rsync脚本

wKioL1l4ddLjcZXeAAAqxoOe7BE353.jpg-wh_50

 

2、执行脚本

wKioL1l4dX3zlPc9AAArQ_-_Vyk491.jpg-wh_50

 

  3、出现错误

出现错误之一:

如果是32位系统

ln -s /usr/local/lib/libinotifytools.so.0/usr/lib/libinotifytools.so.0

如果是64位系统

ln -s /usr/local/lib/libinotifytools.so.0/usr/lib64/libinotifytools.so.0

wKiom1l4dWrSHsZVAABEw8s08us948.jpg-wh_50

 

出现错误之二:

wKioL1l4dVvAf5N5AAAydiEY1Kc989.jpg-wh_50

wKioL1l4dVuiCI2EAAAc3z81QBs858.jpg-wh_50


 

  • 实时复制备份

1、主服务器:

Inotifywait解决监控子目录树的情况_第5张图片

 

2、两个节点上:

Inotifywait解决监控子目录树的情况_第6张图片

Inotifywait解决监控子目录树的情况_第7张图片