¿Existe un comando para mostrar una lista de usuarios que modificaron un archivo que proporciona un historial de archivos?
Sé que es posible con svn / git, etc. pero tenemos un archivo de configuración que no está en SVN y alguien lo modificó.
Si no ha habilitado previamente algún tipo de auditoría, no existe una herramienta que pueda informar esto después de que se haya modificado el archivo. Puede obtener la fecha y hora de la última modificación del archivo, pero no un historial de revisión.
En el futuro, puede instalar, configurar, habilitar el auditd
paquete.
Desde la auditctl
página del manual:
-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.
Hay más discusión sobre esto en la pregunta Registro de creaciones de archivos ocultos
Aquí algunas discusiones sobre piratería con inotify para que te proporcione PID y UID. http://www.ioremap.net/node/55
También mire la Auditoría http://andries.filmer.nl/kb/Monitoring-file-system-events-with-inotify,-incron-and-authctl/129#Audit