Checksum rsync: различить выбор изменённых файлов и проверку передачи
Увеличить схему
Фотография конкретного исполнения не приложена.
По умолчанию rsync выбирает изменившиеся файлы быстрой проверкой размера и времени модификации. Одинаковые размер и timestamp поэтому не являются самостоятельным доказательством равного содержимого. Для сценария, где такие совпадения возможны, контракт проверки нужно определить явно, а не считать quick check полным сравнением байтов.
Опция --checksum меняет предварительный выбор: для файлов подходящего размера сравнивается контрольная сумма. Это требует чтения содержимого обеими сторонами и дополнительного дискового I/O ещё до передачи. Даже если по сети почти ничего не уйдёт, проверка большого архива может занять значимое время и нагрузить хранилище.
Отдельная штатная проверка реконструкции переданного файла относится к другому этапу. Руководство прямо различает её и предварительный ответ на вопрос, нужно ли вообще обновлять файл. Алгоритмы и их согласование зависят от сторон; такую checksum-процедуру нельзя выдавать за криптографическую подпись происхождения данных.
В приёмке используют два файла с одинаковыми размером и временем, но разным тестовым содержимым, а затем обычный изменившийся файл. Проверяют выбранный список и итог получателя. Малый сетевой трафик либо сообщение «не требует обновления» не подтверждают равенство содержимого без учёта применённой проверки.
Основание — Official rsync manual: VERSION3.5.1,21Sep2026; web tool extracted sections, not downloaded raw HTML, разделы --checksum; transfer checksum; --checksum continuation. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Удалённые узлы, ключи и файлы не проверялись; подключения, копирование и изменение прав не выполнялись. Версии и доступные параметры обеих сторон требуют подтверждения.
Запросы отправляются на наш e-mail из вашей почтовой программы.