Ubuntuを使用するホームファイルサーバーがあります。
最近、私のドライブの1つがいっぱいになり、別のドライブを1つ購入してそこに捨てました。
私は非常に大きなフォルダを持っており、ディレクトリのサイズは約1.7Tで、かなりの数のファイルが含まれています。
使ったGCP古いドライブから新しいドライブにファイルをコピーしましたが、正常に動作しているようです。
さて、スペースを確保するために、古いドライブからデータを削除する前に、古いドライブの元のディレクトリと比較して新しいドライブの新しいディレクトリを確認したいと思います。 CRCチェックを使用してこれを行うことができます。
具体的にはどうすればいいですか?
ベストアンサー1
私はdiff
次のコマンドを使用します。
diff -rq --no-dereference /path/to/old/drive/ /path/to/new/drive/
これは、ディレクトリツリー内のすべてのファイルを読み取り、比較し、違いを報告します。この-r
フラグはディレクトリを再帰的に比較し、-q
テキストファイルのように実際の違いを印刷するのではなく、ファイルが異なる場合は画面にメッセージのみを印刷します。--no-dereference
このフラグは、異なるシンボリックリンクがある場合に便利です。たとえば、シンボリックリンクが1つのディレクトリに存在し、そのシンボリックリンクがリンクしているファイルのコピーがそのディレクトリに存在する場合です。
diff
コマンドが印刷されると出力なしこれは、ディレクトリツリーが実際に同じであることを意味します。これを実行して、終了状態が2つのファイルセットが同じであることを示すecho $?
かどうかを確認できます。0
この場合、CRCやチェックサムを計算することは特に役に立ちません。 2つのファイルセットが異なるシステムにあり、各システムが独自のファイルセットに対して独自のチェックサムを計算できるため、ネットワーク経由でチェックサムのみを送信する方が合理的です。チェックサムを計算するもう1つの一般的な理由は、後で使用できるようにチェックサムのコピーを保存することです。