Rsync friendly gzip


26

Não devo ser o único - estou sincronizando os arquivos .tar.gz e observe que toda vez que o arquivo completo é sincronizado, em vez das diferenças. Ao ler isso, parece que em 1999 alguém criou um algoritmo que corrigia o problema http://svana.org/kleptog/rgzip.html (apenas 5% dos dados necessários eram transferidos)

Desde então, como faço para criar arquivos .tar.gz compatíveis com o rsync?

Respostas:


27

meu gzip (no ubuntu e fedora) tem a opção --rsyncable. Então crie os tarballs usando:

tar -c whatever/ | gzip --rsyncable > file.tar.gz

12

BeezNest tem uma explicação muito boa da opção rsyncable para gzip . No teste do autor, essa opção adicionou cerca de 1% ao tamanho do arquivo, mas possibilitou ao rsync transferir as atualizações para um arquivo compactado em gzip com mais de 1.300 vezes de velocidade.

Para os detalhes sangrentos, veja esta discussão , que eles citam.



4

Eu gosto deste porque queria tar.gz, não apenas .gz

GZIP='--rsyncable' tar cvzf bobsbackup.tar.gz /home/bob

3

Eu sei que o Ubuntu Linux aplica um patch (arquivo gzip) às fontes gzip para permitir uma --rsyncablesinalização. Você pode baixar esse patch e usá-lo você mesmo, ou ver se sua distribuição inclui o patch.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.