这是一个假设性问题,而不是我目前遇到的问题。
您如何检测现在或过去哪个进程使用了文件?
找出哪个进程正在访问filename
,lsof filename
或者fuser filename
将完成工作。但是,如果想知道filename
过去 24 小时内访问了哪些进程怎么办?
一个人可以逃脱这个丑陋的(*)黑客
while true; do fuser filename; sleep 1; done
并让它在另一个学期运行 24 小时。但实际上有没有更好的系统,而不建立一个完整的审计框架?
(*) 更不用说fuser
如果不到 1 秒可能无法检测到访问...