我正在浏览 ubuntu 上的“最近”文件夹,发现有一些文件我没有直接访问过。如果我右键单击某个文件,它会显示“访问:”以及特定的时间和日期。
有什么方法可以让我知道哪个程序或进程访问了该文件?
我正在运行 Ubuntu 16.04 并使用 GNOME。
答案1
有什么方法可以让我知道哪个程序或进程访问了该文件?
不-- 默认实现中没有,因为没有进程(或内核)跟踪该一般来说(某些程序可能会有特殊情况,显然是特定于程序的),并转储日志或保存在内存中。
但是如果你想这样做,还是有办法的。我认为最好的方法是使用inotify
系统调用系列来跟踪文件系统访问。你基本上是在寻找inotifywait
用户空间命令(随inotify-tools
包提供)来监视所需文件的访问,并根据需要执行任何操作,例如记录。
进一步提示:您正在寻找该access
事件。