显示文件的历史记录(修改过文件的用户列表)

Abd*_*lah 10 linux files audit

是否有命令可以显示修改提供文件历史记录的文件的用户列表?

我知道使用 svn/git 等是可能的,但是我们有一个不在 SVN 中的配置文件并且有人修改了它。

Geo*_*e M 13

如果您之前未启用某种审核,则在修改文件后没有工具可以报告此情况。您可以获取上次修改文件的日期和时间,但不能获取修订历史记录。

继续前进,您可以安装、设置、启用该auditd包。

从auditctl手册页:

-w path
    Insert  a  watch for the file system object at path. You cannot insert
    a watch to the top level directory. This is prohibited by the  kernel. 
    Wildcards  are not supported either and will generate a warning. The way
    that watches work is by tracking the inode internally. If you place a 
    watch on a file, its the same as  using  the  -F  path  option  on a 
    syscall rule. If you place a watch on a directory, its the same as using
    the -F dir option on a syscall rule.  The  -w form  of  writing watches 
    is for backwards compatibility and the syscall based form is more
    expressive. Unlike most syscall auditing rules,  watches  do  not impact
    performance  based on the number of rules sent to the kernel. The only 
    valid options when using a watch are the -p and -k. If you  need to     
    anything fancy like audit a specific user accessing a file, then use 
    the syscall auditing form with the path or dir fields.
Run Code Online (Sandbox Code Playgroud)

在问题记录隐藏文件创建中对此有更多讨论