4

有没有办法找出哪个进程更早写入给定文件。我遇到了多个进程似乎正在写入文件的问题。我知道其中一个过程,但不确定还有谁在写入文件。我在 linux/ubuntu 上。操作系统是否可以通过日志记录哪些进程已写入指定文件

4

2 回答 2

5

创建一个小型监视进程,该进程将定期记录当前正在访问该文件的人员。

您可以使用 fuser 编写一个小脚本。这是一个简单的例子(有待改进)

#!/bin/bash

log=~/file-access.log

while true
do
  fuser your_file >> $log
  sleep 0.2s
done

但是你必须很幸运,写入这个文件的过程需要足够的时间才能有机会用 fuser 检测到它。

于 2012-05-09T10:45:55.950 回答
1

不,默认情况下没有任何东西可以跟踪事后哪些进程写入文件。

如果您可以随意复制,inotify 或类似工具可以帮助您监控谁在写入文件。

于 2012-05-09T10:40:50.413 回答