Вопрос: Будет ли rsync сохранять значимый объем передачи данных для сжатых / зашифрованных файлов?


Будет ли rsync сохранять значимый объем передачи данных для синхронизации

1) ZIP-файлы,

2) ASCII бронированные GPG-файлы, зашифрованные, и

3) Файлы Mathematica .mx,

соответственно?

Типичным сценарием является то, что у меня уже есть старая копия, а сжатый и / или зашифрованный файл НЕ является единственным файлом для синхронизации, то есть могут быть несжатые и незашифрованные файлы.


1
2018-02-01 17:17


Источник


Вы говорите о случае, когда у вас уже есть более старая копия этих файлов в удаленной системе? Или это новая копия? - Zoredache
Это для первого случая. - qazwsx


Ответы:


Проблема с зашифрованными или сжатыми файлами заключается в том, что даже если в данных изменяется только один байт, все оставшееся содержимое файла отличается не только измененным байтом данных.

Это побеждает одну стратегию, используемую rsync для уменьшения передачи данных, а именно передачу только измененных разделов файла, а не всего файла.

Поэтому не сжимайте данные, если вам не нужно место на диске (в этом случае используйте сжатие на основе диска, которое прозрачно для таких приложений, как rsync).

Не шифруйте данные, если вам не нужно защищать конфиденциальность данных, если компьютер (или диск) будет украден или потерян. (Делайте резервные копии своих данных и особенно ключей шифрования или ключей восстановления). Опять-таки, шифрование всего диска, вероятно, будет в меньшей степени вредным для производительности rsync (но, скорее всего, приведет к катастрофической потере данных при сбое жесткого диска и резервных копиях данных, или при переустановке ОС без создания резервной копии ключ восстановления для других дисков / разделов данных)

Вышеприведенное предполагает, что (значительное количество) соответствующих несжатых / неидентифицированных файлов, вероятно, время от времени будут иметь частичные изменения - путем редактирования или добавления какого-либо рода, в то время как основная часть данных в файле остается неизменной.


1
2018-02-01 18:45



В конкретном случае zip-файлов, если он содержит много файлов, и только некоторые из файлов были изменены, тогда rsync может избежать повторной отправки большей части zip-файла. Вы можете получить подобное поведение из gzip с помощью переключателя --rsyncable (хотя он требует небольшого количества степени сжатия). - psusi
Rsyncrypto рекламирует себя как дружественное rsync шифрование. rsyncrypto.lingnu.com/index.php/Home_Page - Matthew Hannigan


В случае, когда вы rsync'ing только одного файла, и этот файл зашифрован или сжат, единственная пропускная способность, которую вы, скорее всего, сэкономите, - это то, что вам не нужно передавать его вообще, если он не изменился.

Однако, если у вас есть каталог, полный ZIP или JPEG или GPG-файлов, rsync по-прежнему передает только те файлы, которые были изменены, и это отличный способ легко переносить только новые файлы.

Примечание. Мне полезно использовать rsync несжатые данные, когда это возможно, и затем сжимать их для хранения по обе стороны ссылки, если это необходимо. Таким образом, вы можете сэкономить себе пропускную способность передачи. то есть:

mkdir /tmp/torsync
cd /tmp/torsync
unzip /home/me/somefile.zip
rsync -avz . remote:/tmp/somefile
ssh remote 'zip -r somefile.zip /tmp/somefile'

Разумеется, YMMV.

OT: с его вариантами резервного копирования я нахожу rsync полезным, даже если он не экономит пропускную способность, поскольку он создаст резервные копии замещенных файлов, что позволит мне легко получить исторические копии.

Последующее наблюдение: это относится ко всем форматам, в которых задействовано сжатие или шифрование, но я не знаком с пользователями Mathematica.


1
2018-02-01 17:47



Является ли ваше описание применимым ко всем трем типам? - qazwsx