コピーされたディレクトリツリーが、コピー元よりもコピー先でより多くのスペースを占有する理由はいくつか考えられます。NTFSを含むほとんどのファイルシステムは、これに寄与する可能性のある次の機能をサポートしています。
編集:cp
Windowsエクスプローラーではなく、コピーの実行に使用しようとしていることがわかりました。これらの項目に関して、どのようにcp
、そしてどのようにntfs-3g
振る舞うのか分かりません。ただし、答えには2番目の部分があるため、読み続けてください。
- symlinks / hardlinks:ファイルシステムは、元のファイルの完全なコピーではなく、単純に元のファイルを指すファイルの軽量な「コピー」を作成できます(一方の「コピー」に加えられた変更が他方に適用されることを意味します) 。Windowsは、たとえばWinSXSフォルダーなど、この機能自体も使用すると考えています。Windowsエクスプローラーでシンボリックリンク/ハードリンクをコピーしようとすると、単純に軽量のシンボリックリンク/ハードリンクがコピーされません。代わりに、元のファイルの完全なコピーが提供されます。たとえば、ファイルとそのファイルへのシンボリックリンクがあり、両方を新しい場所にコピーするとします。次に、元のファイルのコピーを1つではなく2つ作成し、元のファイルの合計2倍のスペースを使用します。
- スパースファイル:NTFSを使用すると、すべて0のチャンクを多く含むファイルのスペースを節約できます。ファイル全体を保存する代わりに、ファイルシステムはゼロ以外のチャンクのみを保存するように指示できます。Windows Explorerを使用してスパースファイルをコピーすると、結果のコピーはスパースではなくなります。そのため、ファイル内のすべての0のチャンクが実際にスペースを占有し、コピーのサイズが大きくなります。
- 圧縮:NTFSを使用すると、ファイルを圧縮してスペースを節約することができます。Windowsエクスプローラを使用してファイルをコピーすると、コピー先のディレクトリが圧縮ディレクトリでない限り、結果のコピーは圧縮されません。詳細については、このMicrosoftヘルプページを参照してください。
あなたが個人的にこれらの機能を広範囲に利用しているのでなければ、これらのことのどれかがあなたのコピーがそんなに多くのスペースを使い果たすことはありそうにないようです。ソースと(不完全な)コピーの両方でWinDirStatなどのディスク領域使用ユーティリティを実行して、コピーでどの領域が領域を占有しているかを確認することで、余分な領域がどこから来ているかを把握できます。
ただし、復元可能な完全に使用可能なWindowsイメージが実際に必要な場合は、cp
メタデータ(Windows ACLなど)が正しくコピーされると確信できないなどのユーティリティの使用はお勧めしません。代わりに、AFHが提案したように画像ベースのコピーを行うことをお勧めします。ディスクのイメージを作成するのではなく、ディスクのクローンを作成する場合は、基本的に同じ指示に従うことができ、最後にわずかな修正が加えられます。
- Linuxを起動します。(あなたはDebianを使用していると言ったと思います。)
- バックアップするハードディスクへのパスを決定します。で始まる必要があり
/dev/
ます。パーティションだけでなく、ハードディスク全体をバックアップすることをお勧めします。これを以下のように参照します。
- バックアップするハードディスクをマウントし、そのマウントポイントへのパスを見つけます。これを以下のように参照します。
- 走る
dd if=<path to source> of=<path to destination mount point>/mybackup.bak
- 完了するまで3時間から1.5日間待ちます。(おそらく速度は10mb / sから100mb / sの間です。)ソースまたは宛先がUSB 3.0外付けドライブである場合、コピー速度がWindowsの場合よりもはるかに遅いことに驚くかもしれません。理由は、LinuxがUASPをサポートすることになっているにもかかわらず、サポートが必要なときに常にサポートが有効になるとは限らないからです。(少なくとも、これは私の経験でした。)
- バックアップを復元する必要がある場合は、実行してください
dd if=<path to destination mount point>/mybackup.bak of=<path to source>
イメージを作成するのではなくディスクのクローンを作成する場合は、コピー先のhdへのパスに置き換えることができるはずです。(/dev/
。で始まる必要があります。)
編集:gronostajが指摘しているように、bs=<size>
with を使用するとdd
速度が上がる場合があります。ただし、使用する最適な値はシステムによって異なります。詳細については、この回答を参照してください。
gparted
これらの操作にはお勧めしますが、代わりにdd
、1TBディスクを1.5TBパーティション内の単一の1TBファイルにコピーすることもできます(または、バックアッププロセスが遅くなりますが、オンザフライで圧縮する場合は小さなファイルにコピーすることもできます) )。