Есть несколько причин, по которым могут быть или могут быть замечены различия в сообщаемых размерах.
Сообщаемые размеры зависят от используемой вами команды и от того, что именно измеряется. Кроме того, пространство, используемое файлом, может зависеть от файловой системы и параметров форматирования, используемых для форматирования диска. Файловые системы Linux также поддерживают разреженные файлы. Это означает, что пустые части файлов (например, двоичные файлы) физически не хранятся на диске. Таким образом, физический размер файла на диске (по данным дю
) меньше, чем его логический размер файла (как сообщает du --кажущийся размер
или же лс
).
Еще один фактор, который может повлиять на размеры rsync
копия отличается наличием жестких ссылок. По умолчанию жесткие ссылки, т. е. разные файлы, указывающие на одну и ту же информацию на диске, копируются как отдельные файлы, поэтому занимают вдвое больше места.
Еще одна возможная причина разницы в размере — повторное резервное копирование. По умолчанию, rsync
сохранит файлы на копии, которые могли быть удалены в источнике. Нужно добавить --удалять
возможность также удалить эти файлы на таргере.
Две последние причины приведут к тому, что целевая папка будет больше, чем исходная папка, поэтому в вашем текущем случае это не будет объяснением.
rsync
— очень надежный инструмент, и его алгоритмы сравнения файлов надежны. Он сравнивает файлы по отметке времени и размеру файла в байтах (логический размер). Таким образом, если rsync
сообщает, что дальнейшая передача файлов не требуется, тогда вы можете этому доверять.