名前を変更しても変わらないファイルID

名前を変更しても変わらないファイルID

できるだけ多くの変更を追跡するために、cron ジョブとして実行され、ファイル システムの統計と環境設定をキャプチャするシステム ユーティリティ スクリプトを作成しようとしています。

次のタイムラインを検討してください

T0: there is a file /dir/fileX.txt
T1: job runs and captures every file and its stats (permissions, size, checksum etc), including /dir/fileX.txt
T2: mv /dir/fileX.txt /dir/fileY.txt
T3: job runs again and recaptures the file system.  But all it can tell is that fileX.txt was deleted and fileY.txt created

ファイル名を変更しても変更されないファイル ID があり、名前ではなく、すべてのファイルをキーとして使用できますか? その場合、T1 でファイルにキーを設定しますが、名前ではなく ID を使用し、ファイル名は別の属性になります。T3 では、ID は同じままなので、同じファイルだが名前が変更されたことがわかります。

答え1

inode の使用が、あなたが探しているもののようです。inode に基づいてファイルを参照することは、一般的なファイル名の問題を回避するのに良い方法です (たとえば、通常は rm が失敗する「test*」という名前のファイルを削除しようとするなど)。また、あなたの特定のケースでは、オブジェクトを参照できるはずです。

答え2

私が最初にお答えするのは、ファイルに対して md5sum を実行し、結果を保存することです。

私はあることを思い出した後古い記事チェックサム付きのファイルシステムについて。
このコンセプトに従って、実験的なオプションがありますext4 ファイルシステム

あります2013年の報告これは ext4 のこの機能を実験的なものとして定義していますが、常に Btrfs よりも優れています。著者は、各ファイルのチェックサムを生成し、それを拡張属性として保存する安定性の問題を解決するスクリプトを作成しました。スクリプトと手順はレポートに記載されています。

おそらく、これらの解決策の 1 つがあなたに適しているかもしれません。

答え3

ご質問の内容から、カスタマイズされたホストベースの侵入検知システムが必要であると思われます。

いくつかを見て、希望どおりにコンパイルまたは構成できるかどうかを確認してください。

いくつかの名前:samhain tripwire aide

関連情報