Python 如何在基于Fuse的自定义文件系统中捕获复制/移动文件操作?

Python 如何在基于Fuse的自定义文件系统中捕获复制/移动文件操作?,python,fuse,Python,Fuse,我正在用Fuse在Ubuntu上实现一个自定义文件系统,但当复制或移动操作发生时,我需要陷阱。现在我看到的只是一些文件被打开以进行写入或读取,但我需要在上下文中查看这些操作,以便可以看到正在复制或移动的文件 有什么提示吗?考虑到一个复制或移动程序可以做你所看到的事情——打开一个文件并写入它,你想做的事情可能并不容易。这是复制文件的一种非常好的方法 即使您可以看到实际的二进制文件在做什么,也无法提供足够的信息,让您知道这是一个复制、移动还是仅仅是一个将数据写入文件的程序 如果您告诉我们您为什么需要

我正在用Fuse在Ubuntu上实现一个自定义文件系统,但当复制或移动操作发生时,我需要陷阱。现在我看到的只是一些文件被打开以进行写入或读取,但我需要在上下文中查看这些操作,以便可以看到正在复制或移动的文件


有什么提示吗?

考虑到一个复制或移动程序可以做你所看到的事情——打开一个文件并写入它,你想做的事情可能并不容易。这是复制文件的一种非常好的方法

即使您可以看到实际的二进制文件在做什么,也无法提供足够的信息,让您知道这是一个复制、移动还是仅仅是一个将数据写入文件的程序


如果您告诉我们您为什么需要这样做,那么也许有人可以建议另一种解决方案,以满足您的需要。

考虑到复制或移动程序可以执行您所看到的操作—打开文件并写入文件,您想要执行的操作可能并不容易。这是复制文件的一种非常好的方法

即使您可以看到实际的二进制文件在做什么,也无法提供足够的信息,让您知道这是一个复制、移动还是仅仅是一个将数据写入文件的程序


如果您告诉我们为什么需要这样做,那么也许有人可以建议另一种解决方案,以满足您的需要。

我发现使用创建文件系统并使用pyfilesystem中的fs.expose.fuse挂载它非常有效。调查一下。我会的。谢谢。

我发现使用创建文件系统并使用pyfilesystem中的fs.expose.fuse挂载它非常有效。调查一下。我会的。谢谢。

复制正如Weholt所说:很难捕获,因为它基本上与创建新文件并写入相同


移动操作与重命名操作相同。

复制正如Weholt所说:很难捕获,因为它基本上与创建新文件并写入文件相同


移动与重命名的操作相同。

这个公认的答案是错误的,不能在文件副本上设置陷阱,无论保险丝上使用什么包装器。linux上的文件复制操作是打开原始文件进行读取,打开目标文件进行写入,然后再进行读写内容。这个公认的答案是不正确的,不能在文件复制上设置陷阱,不管FUSE上使用什么包装器。linux上的文件复制操作是打开原始文件进行读取,打开目标文件进行写入,然后读取写入内容。