inotify 在删除之前还是之后触发 IN_DELETE?

Posted

技术标签:

【中文标题】inotify 在删除之前还是之后触发 IN_DELETE?【英文标题】:Does inotify trigger the IN_DELETE before or after deletion? 【发布时间】:2011-05-26 07:23:17 【问题描述】:

我正在尝试在文件被删除之前对其进行备份。谁能告诉我 inotify 是在删除之前还是之后触发事件?

【问题讨论】:

【参考方案1】:

IN_DELETE 在被监视目录中删除文件/目录时触发,即删除后。

【讨论】:

【参考方案2】:

但是是否可以在每个操作之前触发 inotify。

rm -rf /media/disqueExterne/ 和 inotify 在每次访问记录之前发送警报,就像数据库服务器一样。

这里:

[bash 命令 rm -rf /media/disqueExterne ] ---> [系统管道] ---> 直接命令 ---> [/dev/sdd1 ] ---> 文件销毁

使用 inotify 预触发

[bash 命令 rm -rf /media/disqueExterne ] ---> [系统管道] --> [inotify pretrigger catch ] ---> 备份每个文件 ---> 安全的 rm -rf 命令 ---> [/dev/sdd1 ] ---> 文件被破坏 是否可以在发送命令之前捕获系统管道或缓冲区中的命令。

[用户发送命令] ---> [缓冲区] ---> 命令[动作启动] 和之后

[user send a command] ---> //inotify hold data ---> [inotify action] --- // --> [return to buffer ] ---> order ---> [action启动]

【讨论】:

以上是关于inotify 在删除之前还是之后触发 IN_DELETE?的主要内容,如果未能解决你的问题,请参考以下文章

rsycn+inotify实时网络数据镜像备份

Linux系统实时数据同步inotify+rsync

“onscroll”在重绘之后还是之前触发?

约束是在自定义触发器之前还是之后执行的?

在 perl 中使用 inotify 监视多个文件

对于手动编辑的文件,inotify IN_CLOSE_WRITE 仅触发一次