ファイル履歴を提供し、ファイルを変更したユーザーのリストを表示するコマンドはありますか?
svn/git などでそれが可能であることはわかっていますが、SVN にない設定ファイルがあり、誰かがそれを変更しました。
答え1
以前に何らかの監査を有効にしていない場合、ファイルが変更された後にこれを報告できるツールはありません。ファイルが最後に変更された日時を取得することはできますが、変更履歴は取得できません。
今後は、auditd
パッケージをインストール、セットアップ、有効化できるようになります。
man ページから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.
これについては質問でさらに議論されています隠しファイルの作成を記録する
答え2
ここでは、inotify をハッキングして PID と UID を提供する方法について説明します。 http://www.ioremap.net/node/55
監査もご覧ください http://andries.filmer.nl/kb/monitoring-file-system-events-with-inotify,-incron-and-authctl/129#監査