Windows のハードリンク - ファイル損失の危険性はありますか?

Windows のハードリンク - ファイル損失の危険性はありますか?

現在、バックアップ データ内の重複した領域の使用を削除するためにハード リンクを作成しています。これは単一の NTFS パーティション内で行われます。

データの損失が心配です。1 つのリンク参照が壊れるとファイルが完全に失われ、1 つが削除されると他のリンク参照も失われ、1 つのバージョンが変更されると複数のバージョンが変更されます。

1 つのファイルが変更された場合にファイルを分岐させる方法はありますか。(ファイルへのリンク参照が 2 つあり、そのうちの 1 つが変更された場合、2 つの独立したファイルが作成されます。)

Dropbox のような同期ソリューションにはリスクがありますか?

今のところ、ディレクトリではなくファイルのみを扱っています。

答え1

変更があった場合にファイルを分岐させるのは、ハード リンクを使用すると簡単です。パスによって変更されたファイルを削除し、変更されたファイルを配置するだけです。ハード リンクはデータを指しますが、独立したパスであるため、他のハード リンクやデータ自体に影響を与えることなく削除できます。唯一のリスクは、ハード リンクの背後にあるファイルに直接書き込むことです。これは、すべての「同じ」ハード リンクに対して 1 つのデータしか存在しないため、当然、そのデータを指すすべてのハード リンクのデータが変更されるためです。したがって、変更があったかどうかを把握し、変更があった場合は新しいファイルを作成する必要があります。

バックアップの目的で質問されているので、いずれにしても問題は発生しないはずです。ファイルが変更されるたびに、バックアップに新しいファイルが作成されます。変更がない場合は、すでに利用可能なデータへのハード リンクを作成できます。したがって、プロセスでは、まず変更をチェックする必要があります。バックアップで変更するかどうか、また変更方法を決定する必要がある場所がわかりません。バックアップとは、既存のものをすべてそのままにして、新しいものを追加する方法のみを決定することです。

一般的に、このようなことを自分で実装することはお勧めしません。あまりにも複雑で、間違いを犯しやすいからです。あなたが考えていることを実装するソリューションはすでに存在しています。たとえば、ハードリンクバックアップ

関連情報