Там есть куча потоков, относящихся к контрольной сумме rsync, но никто не обращается к этой необходимости, что было бы самым эффективным и быстрым способом синхронизации, по крайней мере, в моем случае:
- то же время и тот же размер ► пропустить файл (без передачи, без контрольной суммы)
- разные размеры ► файл передачи (без контрольной суммы)
- разные времена и одинаковый размер ► выполнять контрольную сумму ► передавать только в том случае, если контрольные суммы отличаются
Я заметил, что опция --checksum
может занять много времени, чтобы зеркалировать папку, если есть много файлов. Только с помощью этого параметра будет запускаться контрольная сумма для каждого файла, что очень безопасно, но очень медленно. Кроме того, он будет вызывать накладные расходы на чтение для вычисления контрольной суммы.
Опция --ignore-times
не то, что я хочу, если время и размер совпадают, вероятность того, что файлы разные, незначительна, я готов рискнуть не переносить.
Опция --size-only
является неполной, так как есть хорошая вероятность, что файлы с одинаковым размером, но в разное время могут быть разными файлами (например, изменение char в другом может не повлиять на размер, просто время издания).
Есть ли способ выполнить зеркалирование в соответствии с приведенной выше комбинацией, с rsync (я пропустил что-то в manpages) или с любыми другими инструментами Linux?
Спасибо.