在 CentOS 系统中,可以使用 inotify
工具来监控目录变化。inotify
是 Linux 内核提供的一种文件系统事件监控机制,可以实时监控文件或目录的变化,如创建、删除、修改等。
要在 CentOS 上使用 inotify
监控目录变化,可以安装 inotify-tools
软件包。以下是安装和使用 inotify-tools
的步骤:
- 安装
inotify-tools
软件包:
sudo yum install inotify-tools
- 使用
inotifywait
命令监控目录变化。例如,要监控/path/to/directory
目录的变化,可以运行以下命令:
inotifywait -m -r -e create,delete,modify /path/to/directory
参数说明:
-m
:监控模式,持续监控目录变化。-r
:递归监控子目录。-e
:指定要监控的事件类型,如创建(create)、删除(delete)和修改(modify)。
- 若要将监控结果输出到日志文件,可以使用重定向操作符(
>
):
inotifywait -m -r -e create,delete,modify /path/to/directory > /path/to/logfile.log 2>&1 &
这将在后台运行 inotifywait
,并将输出结果追加到指定的日志文件中。
注意:inotify
有一个限制,即单个进程可以监控的文件描述符数量有限。默认情况下,这个限制可能较低(例如 1024)。如果需要监控大量目录或文件,可以考虑增加这个限制。编辑 /etc/sysctl.conf
文件,添加或修改以下行:
fs.inotify.max_user_watches = 524288
然后运行 sudo sysctl -p
使更改生效。