使用较旧的glibc监视Linux中的文件更改

时间:2013-03-04 06:37:58

标签: c glibc inotify fstat

我需要使用文件描述符监视常规文件上的事件。我正在使用CentOS 4.1和内核版本2.6.18.128的机器上工作。

在意识到无法使用epoll监控常规文件后,我发现可以使用inotify完成此任务。但是,我在其他地方读到,inotify所需的库接口已添加到版本2.4的glibc中,而我的机器已安装2.3.4版本。所以我的内核已经通过glibc来支持inotify。不幸的是,我无法将glibc更新为更新的版本,因为它会破坏项目的某些其他部分。

所以我的问题是:

  1. 我还可以使用inotify来监控常规文件吗?我可以获得更新版本的glibc并将其放在本地文件夹(相对于我的代码),在我的Makefile中包含路径并使用与inotify相关的调用吗?如果是这样,我会遇到什么样的问题?
  2. 通过跟踪fstat结构的st_mtime成员,可以使用struct stat。反对采取这条路线的任何警告?
  3. 如果我的问题显示对这些概念缺乏理解,请在我刚开始使用它们时请耐心等待。

1 个答案:

答案 0 :(得分:1)

对于2个glibc,请参阅以下帖子:    Multiple glibc libraries on a single host

否则inotify似乎是直接的解决方案。