いくつかの独自の解決策がありますが、実行するのに時間がかかりすぎます。
find "/home/user" -type d -printf "%P\n" | sort > "source_1d"
find "/mnt/home/user" -type d -printf "%P\n" | sort > "source_2d"
diff -u "source_1d" "source_2d" # '-_d' means 'directories'
pat="/home/user"; rpt="\/home\/user"
find "$pat" -type f -print0 | sort -z | xargs -r0 sha256sum | sed -E "s/\s\s$rpt\// .\//" | > "source_1f"
pat="/mnt/tra/home/user"; rpt="\/mnt\/tra\/home\/user"
find "$pat" -type f -print0 | sort -z | xargs -r0 sha256sum | sed -E "s/\s\s$rpt\// .\//" | > "source_2f"
diff -u "source_1f" "source_2f"
2番目の部分を比較に使用された2番目のソースのディスクサイズ使用量の計算に置き換えることはできますか?それともext4が属するフォルダのサイズとサイズが同じであれば、同じ意味ではありませんか?
答え1
もう一つの方法は実行することですrsync --dry-run
。その後、両方のツリーを確認して違いを出力します。
rsync --dry-run --checksum source destination
またはrsync
信頼できる迅速な方法(修正時間とサイズ)。
rsync --dry-run source destination
または、使用可能な方法の中でどのチェックサムを使用するかを決定します--checksum-choice
。また、違いに関する追加情報が必要な場合も追加できます--itemize
。
各ファイルの完全なチェックサムを実行すると、ファイル全体を読む必要があるため、速度が遅くなる可能性があることに注意してください。
答え2
使用hardlink -vn
。望むよりhttp://manpages.ubuntu.com/manpages/bionic/man1/hardlink.1.html
。hardlink
同じファイルを確認してリンクしますが、-nv
同じファイルのみをリストします。