inotifywait命令详解

inotify可以对linux文件系统进行高效性、细粒度、异步的监控,用于通知用户控件程序的文件系统变化。inotify可以监控文件,也可以监控目录,配合rsync实现文件的实时同步功能。

在这里插入代码片
安装inotify软件
先检查自己的系统版本(uname -r)我的是centos 7的系统
[root@oa ~]# uname -r
3.10.0-1127.13.1.el7.x86_64
检查是否安装了这个软件
[root@oa ~]# rpm -qa inotify-tools
检查仓库中是否有软件
[root@oa ~]# yum search inotify-tools
若软件在仓库中不存在则安装对应的epel源
[root@oa ~]# wget -O /etc/yum.repos.d/epel-7.repo  http://mirrors.aliyun.com/repo/epel-7.repo
清理缓存
[root@oa ~]# yum clean all
[root@oa ~]# yum makecache
安装inotify-tools软件
[root@oa ~]# yum install inotify-tools -y

简单举例
在234这台主机上进行测试。对/home/awk目录下的文件的增删改查进行监控。打开两个ssh。一个输入监控命令,另一个进行观察

[root@oa ~]# inotifywait -mrq -e 'create,delete,close_write,attrib,moved_to' --timefmt '%Y-%m-%d %H:%M' --format '%T %w%f %e' /home/awk

在234主机的/home/awk目录下进行如下操作在这里插入图片描述
同时可以观察另一个ssh页面的监控画面
在这里插入图片描述
命令的讲解

inotifywait -mrq -e 'create,delete,close_write,attrib,moved_to' --timefmt '%Y-%m-%d %H:%M' --format '%T %w%f %e' /home/awk

参数:

参数说明
-m持续监听
-r使用递归形式监视目录
-q减少冗余信息,只打印出需要的信息
-e指定要监视的事件,多个时间使用逗号隔开
–timefmt时间格式
–format监听到的文件变化的信息

–timefmt 说明:
Ymd分别表示年月日,H表示小时,M表示分钟
–format 说明:

参数说明
%w表示发生事件的目录
%f表示发生事件的文件
%e表示发生的事件
%Xe事件以“X”分隔
%T使用由–timefmt定义的时间格式

可监控的事件:

参数说明
access访问,读取文件。
modify修改,文件内容被修改
attrib属性,文件元数据被修改。
move移动,对文件进行移动操作。
create创建,生成新文件
open打开,对文件进行打开操作
close关闭,对文件进行关闭操作。
delete删除,文件被删除。
  • 6
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值