Это предположение: может случиться так, что разрешение по времени не достаточно велико, и файлы различаются, а их временные метки падают в одну и ту же секунду и имеют одинаковую длину, поэтому rsync не может их различить и пропускает, думая, что они являются так же. Опция --ignore-times
может помочь в этом случае, так как это заставит rsync проверять содержимое файла, а не только размер файла и метку времени.
Другой альтернативой --ignore-times
является --checksum
, которая заставит rsync проверять контрольную сумму каждого файла и должна гарантировать, что впоследствии каталоги будут абсолютно равными, однако это немного замедлит работу, особенно в больших файловых иерархиях.
Еще одной более обыденной проблемой может быть просто сбой оборудования, ОЗУ, жесткого диска или что-то, что приводит к неправильному копированию файлов, я видел, что такое случалось довольно много раз. Чтобы проверить это, используйте средство проверки памяти, такое как memtest86+
и делайте повторные копии одной и той же структуры каталогов в другой целевой каталог и сравнивайте результаты, если результаты каждый раз отличаются, что-то не совсем понятно.