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

MA1*_*MA1 27 linux display process lsof

lsof -p 12345 将列出 pid 为 12345 的进程打开的所有文件,但仅限于特定的时间。

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

Jen*_*rat 34

尝试使用strace -p 12345; 它应该做你想要实现的目标。

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

strace -e open -p 12345
Run Code Online (Sandbox Code Playgroud)

注意:您还可以使用strace -e open <command>.

  • @Ninefingers 实际上,使用`-e` 选项`strace` 可以比`grep` 做得更好:`strace -e open` (11认同)

Bry*_*yce 7

新的实用程序fatrace会这样做:https : //launchpad.net/fatrace/

sudo fatrace | grep '(6514)'
Run Code Online (Sandbox Code Playgroud)

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