Каждый системный администратор знает, что rsync
- лучший вариант, если вам нужно делать резервные копии больших файлов, например. грамм. файл базы данных: поскольку он использует дельта-сжатие, он перезаписывает только те блоки, которые были изменены из исходного файла в резервную копию, избегая больших накладных расходов.
Однако для некоторых форматов файлов, таких как gzip
и bzip2
, изменение файла вызывает повторное копирование всех блоков, так как это вызывает некоторую эффект бабочки в файловой структуре, которая его изменяет, даже при изменении всего пары байтов.
Итак, какие форматы сжатых файлов наиболее rsync
дружелюбный? И наоборот, существуют ли какие-либо другие форматы, которых следует избегать, когда время золотое, и есть 10 КБ данных, для которых необходимо создать резервную копию?
Знаете ли вы, что последние версии gzip
есть --rsyncable
вариант? На странице руководства:
Во время сжатия время от времени синхронизируйте вывод на основе ввода. В большинстве случаев это увеличивает размер менее чем на 1 процент, но означает, что программа rsync (1) может воспользоваться преимуществом сходства несжатого ввода при синхронизации двух файлов, сжатых с этим флагом. gunzip не может отличить сжатый файл, созданный с этим параметром, от файла, созданного без него.