ファイルのコピー: 主流のオペレーティング システム (ZFS を使用する BSD/Linux などを除く) は、ファイルを移動するときにファイルをハッシュしますか?

ファイルのコピー: 主流のオペレーティング システム (ZFS を使用する BSD/Linux などを除く) は、ファイルを移動するときにファイルをハッシュしますか?

データを失わないようにするために私がよくやることは、保存したいファイルを選んで、大容量(バイト数で、重さではありません)の外付けハードディスク(通常は2TB、最近ではUSB3)を接続したら、通常のドラッグアンドドロップ方式で動くファイルをバックアップドライブに保存します。

その後、後でその内容を 3 番目のハードドライブに再度コピーすることもあります。

すべて非常にアドホックです。

「より良く」行う方法はすべて知っていますが、実用的な方法に少し重点を置いています。たとえば、外付けハードディスクが 1 つある場合、MacBook Pro と一緒にバッグに入れる 2.5 インチの外付け USB3 ドライブが 1 つあることになります。これで、合計 2 TB の外付けストレージと 256 GB のローカル ストレージが確保されます。

冗長性が高いものは、必然的にセットアップにかさばりを加えます。2.5 インチは、USB フラッシュの物理的なかさばりに比べ、転送速度と容量の点で常に最適なサイズでした。適切な冗長性を確保するには、外付けドライブを 2 つ持ち歩く必要があります。両方を接続するのは、結局うまくいかないことは分かっています。

「より良く」行うための他の方法としては、特定のワークフローを強制したり、ドライブ全体をバックアップしたりする、必ず法外な金額がかかるさまざまなプログラムがあります。私は通常、これらのいずれも必要ありません。ただし、特にハッシュによる転送/バックアップ後のファイルチェックに役立つものなど、提案は歓迎します。

質問に戻ります。Windows(7、8、8.1)またはOS X(10.8、10.9)のどちらでも、エクスプローラ(またはFinder)に動くローカルディスクから外部マウントディスクまでの巨大なディレクトリ、OSはファイルをハッシュしますかコピーした後、元の内容を消去する前に?

いくつかの回答を期待して、はい、rsyncについては知っています。はい、先ほど言及したこの外付けハードディスクでTime Machineを使用しています(2TBディスクの500GBパーティションです)。Time Machineが裏でrsyncを使用していることは知っています。問題は、Time Machineがあなたのデータを失い始め、合理的に期待するには非常に大きな容量を割り当てる必要があることです。すべて復元可能でなければなりません。4GB のファイルがあり、その中の 2 バイトを編集すると、Time Machine は次回のバックアップ時にさらに 4GB を消費します (そして、そのすべてをコピーするのに必要な時間がかかります)。これらは、Time Machine が完璧には程遠いと私が認識している特性のほんの一部です。ただし、500GB のパーティションで Time Machine を操作させてもまったく問題ありません。

重要なファイルの流れは(Gitサーバーにすでにあるすべてのソースコードは無視して)、次のようになります。最初はローカルディスク上にのみ存在し、数日ごとにTime Machineパーティションに移動します。最終的には、いっぱいになり、過去のイメージの粒度が小さくなると、Time Machineパーティションから消えてしまう可能性があります。数週間ごとに、ローカルスペースを大量に占有しているが、自分が使用していないと思われるファイルを手動で選択し、動くそれを外付けドライブのパーティションに保存します。これで、コピーが 1 つ存在し、外付けドライブにのみ保存されます。このデータが本当に必要になる可能性がある場合は、データを別の場所に保存します。

もしOSに指示するのであれば動くファイルの配信時に内容の検証が行われない場合、プロトコルを完全に変更する必要があります。これは、ターゲット メディアに欠陥がある場合、データが確実に破損するためです。

この質問を書いているうちに、間違った質問をしたのではないかと思い始めています。おそらく、常に 2 つのバックアップ ターゲットを使用し、プロトコルを 1 回の移動、1 回のコピーから 2 回のコピー、1 回の削除に変更する方がはるかに賢明です。これにより、完全なデータ保持の保証が確実に高まります。

しかし、削除/移動の前にハッシュ化を実行することも非常に重要です。知る対象メディアに欠陥がないことを確認してください。

おそらく私が欲しいのは、rsync GUI、あるいはもっと良いのは、エクスプローラー/Finder でディレクトリを通常コピー/移動するときに行う「コピーしてハッシュ」や「移動してハッシュ」などのアクションを実行できるシェル拡張機能/プラグインです。

これにはいくつかのバリエーションもあります。2 つの外部ディスクを接続して、「2 つの宛先にコピーしてハッシュする」を発行します。これにより、2 つの連続したコピーで発生するような、ソース データの不必要な 2 回のハッシュが防止されます。

答え1

ファイルを外付けドライブにコピーする際に破損が発生したため、Windows 7 ではコピー/移動操作の正確性が検証されないことが確認できました。

回避策としては、Windowsに関しては、テラコピー-- 使い始めたばかりですが、うまく機能しているようです (最初に設定で「コピー後に常にチェックする」を有効にするだけです)。また、シェル統合も行われ、複数のコピー先を指定する方法が見つかりませんでしたが、最初のコピーが完了した後にコピーする別の先を手動で選択できます。その場合、ソース ファイルのハッシュが記憶されます。この機能が重要と思われる場合は、作者に連絡して機能をリクエストすることもできます。

関連情報