我的操作系统是linux。
我的文件位于/ etc,
它的完整路径如/ etc / AAA。
任何工具或命令都可以告诉我文件是在一段时间内由哪些进程访问的。 例如 上午1:10,进程写入/ etc / AAA 凌晨3:50,进程B读取/ etc / AAA
我需要知道访问/ et / AAA
的所有进程ID感谢。
答案 0 :(得分:2)
没有工具可以做到这一点。要查看当前哪个进程处于打开状态,您可以使用fuser
和lsof
。
要获取更改历史记录,您需要运行一个监视文件系统以进行更改的进程。您可以使用inotify service来构建此内容。
相关:
答案 1 :(得分:1)
linux审核系统可以为您提供帮助,并将提供详细信息:
这是Redhat网站上的一些documentation,但应该适用于其他Linux变体。大多数发行版都有审计系统,但可能是可选安装。
假设审计子系统已在运行,您可以添加规则来监视示例文件的读取权限,如下所示:
auditctl -w /etc/AAA -p r -k mywatch
然后你可以用comamnd看到结果:
ausearch -k mywatch
或观察audit.log文件(在某些系统上的/ var / log / audit中)
答案 2 :(得分:-1)
stat为您提供了一些信息;
$ stat test.txt
File: `test.txt'
Size: 166 Blocks: 1 IO Block: 65536 regular file
Device: 6a81ccb1h/1786891441d Inode: 6755399442667785 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ PC_01) Gid: ( 513/ None)
Access: 2014-07-16 16:03:18.208462800 +0200
Modify: 2014-07-16 16:03:18.209462900 +0200
Change: 2014-07-16 16:03:18.209462900 +0200
Birth: 2014-07-16 16:03:18.208462800 +0200