複数の小さなドライブから大きなドライブに大量のデータセットをコピーする必要があることがよくあります。最近では、WD Easystore 12TB外付けUSB 3.0ハードドライブをターゲットにしています。シリーズのすべてのファイルをコピーするには約3日かかります。ターゲットドライブは、ソースが読み取られるのを待ち、ほとんどの時間をアイドル状態にします。各ソースで同時にcpを実行してコピー時間を20時間未満に保つことができますが、これはほとんどのファイルを断片化します。
事前割り当てオプションを追加するcpパッチがありますが、これはntfs-3gでサポートされていないFallocateシステムコールをサポートするファイルシステムでのみ機能します。 Rsyncには事前割り当てオプションがありますが、おそらく同じ理由で「rsync:do_fallocate」「操作がサポートされていません(95)」で失敗します。
ファイル全体がすでにメモリにあるまで書き込みが行われない場合、割り当ては連続しますが、ファイルはまだ断片化されることを望み、ファイルサイズよりも大きなブロックサイズとしてddを使用してみました。すべてのファイルにスペースを事前に割り当てるためにntfsfallocateを使用してみましたが(23kファイルは約12時間かかります)、ファイルを上書きするときにcpは既存の割り当てを使用しないようです。
FallocateのLinux NTFSドライバをサポートするディストリビューションはありますか?
他の提案?