ここでの「独自性」とは、時間にも関係します。
- ファイルシステム上にファイルが作成されるたびに、一意のファイルがあります。
- 同じディレクトリにある同じ名前のファイルで、異なるタイムステージに表示されるファイルは異なります。
- 「一意」の定義は、ファイルの内容とは何の関係もありません。
まず、iノードを使用してファイルを識別します。iノードが異なるファイルは異なります。ファイルは、移動したり触れたりしても、ライフサイクル内で常に固定のiノードを持っています。
ただし、iノードはOSによって再利用される場合があります。ファイルA.txtにinode22345がある場合、A.txtを削除してB.txtを作成すると、B.txtはode22345にある可能性があります。
ファイルの作成時間がある場合はどうなりますか?これにより、inode+creation-timeを使用してファイルシステムの履歴内のファイルを識別できます。しかし、Linuxはそれを提供しませんでした。
inode + file_md5も試しますが、A.txtとB.txtの内容が同じ場合はどうなりますか?
それで、何かアイデアはありますか?
===========編集===========
私のシナリオは、一種のログファイル収集です。ロギングディレクトリでは、ログファイルが作成、移動、および削除される場合があります。ファイルオフセットからタイムスタンプへのマッピングを使用して、作業のような「チェックポイント」を実行します。では、今述べた「ファイル」をどのように汚すのでしょうか。