`
tomqyp
  • 浏览: 25687 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

转 监视文件系统的一举一动 ── inotifywait

阅读更多

在小舅子的电脑上好网没地方存,暂时放在这里。希望这个inotifywait比windows下人filemon好用。

 原文出自:http://li2z.cn/2009/12/11/inotifywait/

 

监视文件系统的一举一动 ── inotifywait

某天,TX大侠说他找不到awn的配置文件在什么地方,问我知道不?而我只是在N年前用过一下下awn而已,所以,理所当然地不知道了。后来,我们想了一个土办法:
在$HOME下先执行一次

tree -as > /tmp/before

然后在awn的界面里修改一下配置,再在$HOME下再执行一次

tree -as > /tmp/after

然后再

diff /tmp/before /tmp/after

哈哈,别说,这样还真把需要的配置文件找到了。但是,谁看着这个方法,都多少会觉得有点别扭。
现在,我发现了这个可以监视文件系统的任何动作的工具: inotifywait (项目主页) 。
inotifywait 包含在gentoo的 sys-fs/inotify-tools 包里,其他发行版应该也是叫这个名字。
这个工具是使用linux内核的inotify调用,来实现监视功能的。所以你需要有2.6.13以上版本的内核,才会有这个调用。
像上例中,如果要找某个未知文件的该动的话,你可以监视整个$HOME目录,这样:

inotifywait -mr $HOME

现在你再修改awn的配置,或者打开/修改/删除任何$HOME及其子目录下的文件的话,终端都会显示出来。比如:

/home/lily/test/ CREATE abcd.txt
/home/lily/test/ OPEN abcd.txt
/home/lily/test/ ATTRIB abcd.txt
/home/lily/test/ CLOSE_WRITE,CLOSE abcd.txt
/home/lily/test/ MODIFY abcd.txt
/home/lily/test/ OPEN abcd.txt
/home/lily/test/ MODIFY abcd.txt
/home/lily/test/ CLOSE_WRITE,CLOSE abcd.txt
/home/lily/test/ DELETE abcd.txt

这个就是我在~/test下执行

touch abcd.txt && echo 111 > abcd.txt && rm abcd.txt

的时候的结果,很详细吧?

另外值得注意的是,如果你 $HOME 下的文件数目比较多,大于 /proc/sys/fs/inotify/max_user_watches 里的值(默认才8k)的话,inotifywait 就会提示超出限制,报错了。这时候你可以估算下总的文件数,然后手工修改上限值。

echo 170000 | sudo tee /proc/sys/fs/inotify/max_user_watches

我这边把上限改成了170000,发现CPU和内存的占用都还不是很明显,还是完全可以接受的。

PS:除了使用这个inotifywait以外,你也可以在自己的程序里直接调用内核的inotify完成某些特定的功能,而且python和perl都有相应的模块可以直接调了,更详细的介绍可以看这里(翻遍了google,好不容易才找到这原文啊,BS那些转载不注明原地址的,还有转了以后,不管代码格式却分成10来页骗点击量的)。

最后修改时间: 2009年12月11日 21:06

 

分享到:
评论

相关推荐

    监视你的一举一动

    一个键盘监控的程序

    文件系统监视器

    文件系统监视器,监视和报告文件系统的变化的小工具.

    c#监视文件系统

    c#整个文件系统的变化.

    windowns文件系统监视器

    十分杰出的文件监控软件,能够监视你电脑中软件的文件系统访问情况,通俗讲就是软件打开关闭或创建删除了些什么文件,均逃不过它的眼睛,它是让流氓程序现身的利器!更好保护你的隐私!它不支持网络数据包监控,但在...

    winform 监视文件系统源码

    winform 监视文件系统源码! 很值得下载看看!资源免费,大家分享!!

    Filemon 系统文件监视工具

    一个出色系统文件监视工具,可以监视应用程序进行的文件读写操作。

    文件转换监视器

    本程序与文件上传配合使用,主要功能是监视"路径一"所指的文件夹如发现用户有上传的文件,则将其转移到"路径二"文件夹下,并转换为swf格式。swf格式文件将被放在"路径三"文件夹下。(路径名不可有空格) 注意: 一、...

    文件系统监视工具v1

    监视文件被改动的情况,纪录下来后,可以知道哪些地方被改了,在查木马的时候可以用到

    Filemon文件系统监视软件

    Filemon 是一款出色的文件系统监视软件,它可以监视应用程序进行的文件读写操作。它将所有与文件一切相关操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行保存、过滤、查找等...

    网页文件监视系统 可以监视文件是否被改变了

    启动软件后 可以添加需要监视的文件夹 当文件夹的属性 大小 发生改变 或者被添加删除了文件后都会发出报警

    文件打印监视管理系统

    文件打印监视管理系统 文件打印监视管理系统 文件打印监视管理系统 文件打印监视管理系统

    文件监视器,谁创建文件骗不了我

    非常好文件监视器,能监视系统盘或全部磁盘创建、修改、重命名或删除文件的信息,帮助测试某些软件。而且可用于探测一些不明软件安全性(如果没有恶意创建、修改文件,那就比较安全)。本软件由delphi6.0制作。

    linux 操作系统 GTK /proc文件 系统监视器

    linux下读取/proc获得系统信息 监控系统状态,显示系统中若干部件的使用情况。 用GTK库实现图形界面显示系统监控状态

    Filemon源码(文件系统监视软件)

    Filemon 是一款出色的文件系统监视软件,它可以监视应用程序进行的文件读写操作。它将所有与文件一切相关操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行保存、过滤、查找等...

    windows系统文件操作监视工具

    选择性监视执行文件的操作过程(文件或文件夹的创建删除修改等)。 选择性监视执行文件的操作过程(文件或文件夹的创建删除修改等)。

    文件监视系统

    托盘程序对服务的控制,其中服务程序实现对指定的目标和目的目录进行实时监视, 文件发生变化时同步目的目录。其中使用了服务程序,文件异步监视ReadDirectoryChangesW, 线程_beginthread, 互斥WaitForSingleObject

    监视文件或文件夹是否被改动.rar_文件 监视_监视 文件_监视文件_监视目录_目录 监视

    一个监视文件或则文件夹的程序,监视目录可以在代码里面改或者在窗体上添加文本输入!

    HOOK监视文件变化

    文件 监视 hook 监视文件的变化 希望有用 ~~~~

    文件系统监视软件 Watcher 1.1

    Wather 是一个小工具,可以监视指定目录下文件系统的变化情况,比如:文件内容被修改、属性被修改、文件名被修改、时间被修改等等。 <br> Watcher 1.1 已根据使用者反馈意见修改,多谢大家的支持。 ...

Global site tag (gtag.js) - Google Analytics