持续监视进程打开/访问的文件

持续监视进程打开/访问的文件

lsof -p 12345 将列出 pid 为 12345 的进程在特定时刻打开的所有文件。

我们如何才能从开始到结束持续监视一个进程(直到进程终止)以列出/显示该进程在整个生命周期内访问的每个文件?

答案1

尝试一下strace -p 12345;它应该可以实现您想要实现的目标。

可以过滤输出以仅显示打开的文件(Dan D. 的评论):

strace -e open -p 12345

笔记:您还可以使用 快速跟踪正在运行的进程strace -e open <command>

答案2

新的实用工具脂肪痕迹将执行以下操作:https://launchpad.net/fatrace/

sudo fatrace | grep '(6514)'

不要使用 -p 选项,它的含义与 lsof 或其他实用程序中的含义相反。

答案3

这将循环重新运行您的命令并每次清除屏幕:

watch "lsof -p 12345"

警告:这将错过快速文件访问,并且仅适用于查看长期文件

相关内容