ある外部ドライブから別のドライブに大量のデータをコピーする最も速くて安全な方法


86

外部ドライブ(単一のUSB外部ディスク)から別の外部ドライブ(Firewire経由で接続されたDrobo)に約2TBのデータをコピーできる必要があります。

Finderはオプションではありません。問題が発生した場合、プロセスが停止し、失敗した理由を把握して最初からやり直す必要があります。それを乗り越えるのに数ヶ月かかるかもしれません。

私はCPとRSYNCについて読んだことがありますが、あまり慣れていないので、いくつかのスイッチが間違っていたり、ファイルを見逃したり、ファイルの日付を間違えたり、最悪の場合があります...

誰も最小のリスクとコストでこれをやってのける方法を提案できますか?


MacOSの10.13.4+以降では、実際にできる巨大なファイル(およびすべての関連リンク)をコピーするためにファインダーを使用しています。私は自分で(既存のものから)別のTime Machineバックアップディスクを作成しようとしましたが、それは迅速かつ美しく動作します。どうやら、10.13.4以前では、これバグでし、修正されました。この回答でさらに詳しい情報:apple.stackexchange.com/a/323691/261070
youngrrrr

これに対する答えは、「最速」の定義方法によって異なります。あなた(人間)がこの作業を開始してから終了するまでの最速の転送速度または最短時間を望みますか?あなたがかかる時間は、ターミナルがあなたを怖がらせるかどうかのようなものに依存します。あなたにとっての理想的な答えは、これが一回限りの操作であるか、一般的に繰り返される操作であるか、そしてお金を使うかどうかによっても異なります。
iconoclast

回答:


144

リモート同期はrsync、大量のデータをコピーするための信頼できる選択肢です。コピーをコミットする前に、コマンドを準備して予行演習を実行できます。--dry-runコピーをシミュレートするために追加します。

最終的なコマンドは非常に簡単です。

sudo rsync -vaE --progress /Volumes/SourceName /Volumes/DestinationName

フラグは次のとおりです。

  • v 冗長性を高めます。
  • a アーカイブ設定を適用して、シンボリックリンクや権限など、ソースファイルを正確にミラーリングします。
  • E 拡張属性とリソースフォークをコピーします(OS Xのみ)。
  • progress コピー中にカウントダウンと転送統計を提供します。

sudorsync所有者に関係なく、ドライブ上のすべてのファイルにアクセスして読み取る適切な権利があることを確認するために使用されます。これによりrsync、元の所有者情報を再作成して、新しいドライブにファイルを書き込むこともできます。

rsync これは、問題が発生した場合に再実行でき、詳細なログを提供し、安全性を維持しながら可能な限り高速であるため、おそらく最良の選択です。

を最大限rsync活用するための多数のガイドがあり、rsyncコマンドの例では関連する例を示しています。@GordonDavissonが以下でコメントするように、末尾のスラッシュには注意してください。コピーがフォルダから始まる場合、これらは世界の違いを生むことができます。

代替ツールにはdittoおよびが含まれcpます。どちらも妥当な選択肢ですが、構文は異なります。


5

DroboとQNAPの間で8 TBを同期するためにbittorrent同期を使用しました。


bittorrent同期もこれを行う方法です。(私の意見では)downvotesは本当に必要ではありません。
いとこコカイン

6
@CousinCocaineええ、しかし質問はどのアプリを使用するかではなく、何かをする方法についてでした。
ディロン

@Dillon:どのアプリを使用するかを知ることは、その方法を知るために知る必要があるものの99%である場合があります。
iconoclast

3

ここでしばらく前に、同様の質問に答えました。私の答えを以下にコピーします。


cp -Rfv sourcefile destinationfileはかなり定期的に成功して使用しています。

cp =コピー

R =ファイル階層を維持

f =既存の宛先ファイルを開くことができない場合は、それを削除して再試行します

v =詳細モード、進行中に転送されたファイルを表示します

sourcefile =コピーするデータ

destinationfile =コピー先のディレクトリ/ドライブ


9
ただし、cpはファイルが変更されていなくてもファイルを再コピーするのに対し、rsyncはターゲットに既に存在するファイルのコピーに時間を無駄にしないことに注意してください。したがって、中断した場所から再開したり、増分コピーを実行したりできます。
デビッド

-n既に存在するファイルをコピーしないように追加し-p、可能な場合は拡張属性やリソースフォークを含むすべての権限を保持できます。
スピンアップ

3

「最速」の方法は、物理的に両方のドライブを単一のコンピューターの内部に移動し、コピー(またはrsync)を実行してから、それらを戻すことです。

なんらかの理由で中断された場合(電源スイッチの猫の手順?)、rsyncは既に成功したファイルを再コピーしないため、rsyncを使用します。また、同じ場所にある同じファイルもコピーしません。


データセットのサイズのため、これはより高速であることに注意してください。はるかに小さい場合、ドライブを移動する時間によって速度の利点は相殺されます。
WGroleau

いいえ、大量のデータに対して高速です。少量のデータの場合、コピーは依然として高速ですが、ドライブの移動にかかる時間がキャンセルされます。ただし、中断された場合、rsyncは中断前に行われたものを再度コピーすることを回避できるため、非完全な条件下では潜在的に高速です。
WGroleau

転送速度は速いが、中断により最初からやり直される場合、プロセス全体が高速ではない可能性が高く、プロセス全体が重要です。「完璧な条件」= 何もプロセスを中断しません。私の経験では、それはだ非常に共通の何かが、あなたが大規模な移転を扱っている問題を引き起こすことが起こること。だからこそ、途切れない転送を「完璧」と呼ぶのです。
iconoclast

前述のようにrsyncを使用している場合、中断しても最初からやり直すことはありませ
WGroleau

この文脈で「最初からやり直す」ということの意味を理解していないのです。rsyncはデータの同期で中断したところから再開できるという事実をよく知っています。ただし、コマンドを発行して完了に失敗した場合、人間の介入からやり直すことになり、プロセス全体に時間がかかります。全部をベビーシッターで時間を無駄にするか、失敗とそれを発見するまでに大きな遅れがあります。人間にとって重要なのは、プロセス全体の時間、および人間の介入の時間です。
iconoclast

1

ドライブAをドライブBに正確にコピーする場合は、ディスクユーティリティを使用してこれを実行できます。


ディスクユーティリティの復元機能を使用します。復元とコピーと貼り付けの違いに関する背景:

ディスクユーティリティの復元機能は、コピープロセスを高速化できるブロックコピー機能を使用します。また、ソースデバイスのほぼ 正確なコピーを作成します。「ほぼ正確」と言うとき、有用なデータが取り残される可能性があることを意味するわけではありません。つまり、ブロックコピーは、データブロック内のすべてを1つのデバイスから別のデバイスにコピーします。結果は、オリジナルのほぼ正確なコピーです。一方、ファイルコピーはファイルごとにデータをコピーします。ファイルデータは同じままですが、ソースデバイスと宛先デバイス上のファイルの場所は非常に異なる可能性があります

ブロックコピーを使用する方が高速ですが、使用できるタイミングに影響する制限がいくつかあります。ブロック単位でコピーするには、ソースデバイスと宛先デバイスの両方を最初にMacからマウント解除する必要があります。これにより、コピー処理中にブロックデータが変更されないことが保証されます。ただし、心配しないでください。アンマウントを行う必要はありません。ディスクユーティリティの復元機能が自動的に処理します。ただし、復元機能を使用する場合、ソースもデスティネーションも使用できないことを意味します

ソース:https : //www.lifewire.com/use-disk-utility-to-clone-macs-drive-4042367


説明書

デバイスAからデバイスBにすべてのファイルをコピーするため

警告:あるボリュームを別のボリュームに復元すると、宛先ボリューム上のすべてのファイルが消去されます。ボリュームを復元する前に、保存先のボリューム上のファイルを別のボリュームに保存します。

  1. [表示]> [すべてのデバイスを表示]を選択します。
  2. 復元するサイドバーでボリュームを選択し、[復元]ボタンをクリックするここに画像の説明を入力してくださいか、[ 編集]> [復元]を選択します。

これは消去され、正確なコピーになるボリュームです。[デバイスB]

  1. [復元]ポップアップメニューをクリックし、[デバイスA]をコピーするボリュームを選択します。
  2. [復元]をクリックし、[完了]をクリックします。

ソース:https : //support.apple.com/guide/disk-utility/restore-a-disk-dskutl14062/mac


また、ブロックコピーでは、空き領域のコピーに時間がかかり、コピー先がコピー元より1ブロック小さい場合は失敗します。(すぐに検出されない方法で失敗する可能性があります。)宛先が大きい場合、余分なスペースは使用できなくなります。
WGroleau

@WGroleauは、「余分なスペースが使用できなくなる」を拡張できますか?
JBis

ブロックコピーには、最後のブロックを示すブロックが含まれます。宛先がデータに対して十分な大きさであるが、ソースよりも小さい場合、オペレーティングシステムは、存在しないブロックが利用可能であると考えます。宛先が大きい場合、OSは余分なブロックが存在しないと見なします。
WGroleau

@WGroleauので、単一の1gbファイルを持つ500gbドライブがあり、1000gbドライブへのコピーをブロックするとどうなりますか?そして、あなたはサイトリンクできますか?
JBis

「dd」のマニュアルページを見てください。500GBをコピーしますが、499GBのほとんどは空です。それ以外の部分は、オペレーティングシステムにのみ表示され、500 GBのドライブがあることを伝えます。「パーティションマップ」と「ボリュームマップ」も
参照してください-WGroleau

0

コマンドラインルートを使用したくない場合は、FreeFileSyncアプリを定期的に使用して、外部アレイから2 TBのデータを問題なくネットワークロケーションに同期します。エラーの処理方法を制御し、完了時にログを取得できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.