如何确定文件的原始位置?

如何确定文件的原始位置?

我曾经mv将与特定模式匹配的所有文件移动到一个文件夹中。如何确定(移动文件后)特定文件的来源?

使用该命令后是否有机会确定位置?

答案1

不,那里没有。您可以设置auditd 或类似的东西来跟踪发生的情况,但这应该在命令之前设置。

一种可能的解决方案是查看 shell 历史记录以查看文件移动到何处/如何移动,并从那里确定原始位置。然而,这在很大程度上是不可靠的。

答案2

使用该命令后是否有机会确定位置?

是的,如果运气好的话(可能还有很多手工工作)。

测试盘是一个工具,可以取消删除文件

尽管链接页面显示了如何恢复已删除的文件,但即使文件被移出目录,该过程似乎也能工作,而不仅仅是从目录中删除(又称为删除?)。我尝试成功恢复移动的文件,无论是文件移动到同一分区内的目录还是移动到具有不同文件系统(ext4 到 NTFS)的不同分区中的目录。

该工具允许您浏览文件系统,并以红色显示已删除/移动的文件。因此,如果您发现已移动的文件,您就知道该文件是从哪里移动的。除非您可以将搜索范围缩小到您怀疑的几个位置,或者您找到一种让 testdisk 自动为您执行此操作的方法(假设已删除的文件都是文档,正如您在评论中提到的那样),否则可能需要大量手动工作。

另一种解决方法是检查您用于读取/修改这些文档(当它们位于旧位置时)的任何软件工具的缓存。某些应用程序可能会保留这些文档的链接,以便实现“最近的文件”菜单。

答案3

我同意乌尔里希的观点:这通常是、基本上是不可能的。但

  • 这可能具体取决于您使用的 Linux 版本以及文件所在的文件系统类型。我对这些不是很熟悉,但看起来像日志文件系统喜欢外部3外部4 可能会保留类似于更改审计跟踪的内容。可以对其中之一进行逆向工程,以查看回滚文件系统更改所需执行的操作,这将显示文件的来源。或者可能不是;我不知道这是否可能。

    注意:如果可能的话,可能需要您尽快停止使用文件系统,以便新的更改不会覆盖您想要回溯的移动日志。

  • “显而易见”的答案是——如果您在移动之前有足够新的备份,您可以查看它以了解文件所在的位置。

相关内容