Historique des utilisateurs modifiant un fichier sous Linux

Je me demande s’il est possible de lister tous ceux qui ont modifié le fichier avec le temps. Je suis conscient que stat or ls -lrt donnera le dernier utilisateur qui a modifié le fichier. Mais je veux savoir s’il est possible de trouver l’utilisateur N-1 qui a modifié le fichier.

Note: Je pense que les chances sont très minces pour trouver un tel utilisateur. Je veux juste confirmer avec des experts avant de déclarer que c’est une impasse.

Exemple:

À 1h00 du matin, ABC a modifié le fichier
A 2h00 du matin, XYZ a modifié le même fichier.

Je suis conscient que XYZ a modifié le fichier, Comment trouver qui a modifié le fichier avant XYZ (dans ce cas ABC)?

Je suis conscient que stat ou ls -lrt donnera le dernier utilisateur qui a modifié le fichier.

La modification d’un fichier ne change pas son propriétaire.

En général, les systèmes de fichiers ne conservent pas l’historique des modifications. Si cette information est cruciale, la voie à suivre est

  1. Pour les hiérarchies de fichiers complètes: un VCS ( Version Vontrol System ) tel que Git, Subversion, Mercurial, CVS, …
  2. Pour fichiers uniques, RCS ou SCCS, …

Il est possible de configurer l’audit pour suivre les modifications apscopes à des fichiers spécifiques. Il y a quelques limitations:

  • il doit être configuré avant les changements d’intérêt
  • le démon d’audit a tendance à refuser de démarrer s’il est invité à regarder un fichier qui a été supprimé.

Pourtant, cela peut être utile. Voici quelques liens utiles sur le sujet:

  • Fichiers d’audit Linux pour voir qui a apporté des modifications à un fichier
  • Surveillance de l’access aux fichiers Linux, modifications et modifications des données
  • Suivi des modifications de fichiers à l’aide de auditd
  • Le système d’audit Linux ou qui a changé ce fichier?