如何查看哪些进程访问了某些文件

如何查看哪些进程访问了某些文件

我们的服务器上有一个目录,我们手动将文件复制到该目录中,然后晚上会运行一些神奇的程序来处理这些文件并重命名它们。这是我来这里之前设置的,我似乎找不到这个神秘的过程位于何处。我搜索了各种机器上的计划任务和 SQL Server 代理作业,但我不知道还能在哪里查找。

有什么好用的工具可以监视这些文件并报告哪些进程正在访问这些文件?或者,Windows Server 2003 为我提供了哪些选项来查找这些信息?

答案1

处理由 sysinternals 开发的,易于使用,并报告哪个进程具有指向特定文件的打开文件句柄。结合使用进程探索器获取所需流程的详细信息

答案2

如果您打开计算机管理,然后单击共享部分,应该会有一个“打开的会话”列表。如果您在文件更新时观察它,它应该会显示进行编辑的机器的远程主机名。您可能需要按您关心的文件进行排序,因为可能还有其他合法连接处于打开状态。

注意:从您的服务器上找出远程机器上的进程正在执行的操作并不容易 - 最好的办法是执行一次以找出哪台机器正在执行此操作,然后查看该机器以确定它在做什么。

祝你好运!

答案3

只需使用集成审计即可。此功能自 Windows NT 以来就已存在。在 Windows 7 和 2008 中,添加了一些功能:http://technet.microsoft.com/en-us/library/dd560628%28v=ws.10%29.aspx
这仅适用于 NTFS 分区。
只需打开所需文件或文件夹的属性。转到“安全”选项卡、“高级”按钮,然后转到“审核”选项卡。您将在那里看到所需的内容。

详细说明可在多个地方找到。例如:http://www.techotopia.com/index.php/Auditing_Windows_Server_2008_File_and_Folder_Access

相关内容