如何在文件系统备份期间检测“实时”文件

时间:2014-04-08 15:53:34

标签: python database file-io cross-platform backup

我正在编写一个基于Python的服务,它扫描指定的驱动器以查找文件更改并将它们备份到存储服务。我关心的是处理打开并被主动写入的文件(主要是数据库文件)。

我将运行这个跨平台的Windows / Linux / OSX。

我不想修补卷影复制服务。我非常高兴向用户/日志发出通知,如果对小文档或类似类型的文件进行间歇性写锁定,则必须跳过文件甚至重试复制操作x次。

成功地复制出一个处于不一致状态但没有失败的文件肯定会是Bad Thing(TM)。

此服务的用户将能够指定他们想要备份的路径,因此我必须能够在运行时确定要跳过的内容。

我想我可以识别任何具有读/写句柄的文件并尝试在归档过程中获得对它的独占访问权限,但我认为如果用户正在积极使用该文件,这可能会过于干扰(?)系统

想法?

1 个答案:

答案 0 :(得分:0)

您可以查找要关闭的文件并将其存档。 phi通知库允许您观察许多事件的给定文件或目录,包括CLOSE-WRITE,它允许您检测那些已关闭并发生更改的文件。