Eu faço backups de um servidor com o rsync, mas esses backups são muito grandes e eu gostaria de compactá-los. Existe uma maneira de ter algum tipo de wrapper no rsync para compactar o arquivo no backup, rsync as alterações do arquivo ativo e re-compactá-lo novamente assim que for copiado?
Ou seja, se os arquivos de origem no ao vivo são foo , bar e baz , o backup tem foo.gz , bar.gz e baz.gz .
Para reafirmar: eu quero arquivos compactados em uma extremidade e arquivos não compactados na outra extremidade. Não quero compactar antes do rsync, porque mesmo com --rsyncable, o rsync é menos eficiente. Eu sei sobre a opção -z para rsync. Não tenho espaço na máquina de backup para armazenar todos os arquivos descompactados.
Eu acho que a sincronização para um sistema de arquivos montado fuseCompress pode ser a melhor opção. O histórico do projeto menciona especificamente eles fazendo melhorias no desempenho do rsync com ele.
http://code.google.com/p/fusecompress/
https://github.com/tex/fusecompress/
fonte
Você pode gravar um wrapper no rsync. Se você extrair dados, não há nada de especial para fazer. Se você deseja enviar os dados das máquinas originais para o servidor de backup, é mais delicado fazê-lo funcionar:
Primeiro, você deve garantir que o wrapper seja chamado com o mesmo nome, caminho e parâmetros que o rsync original, pelo menos para o usuário sob o qual você executa os backups.
Segundo, certifique-se de não escrever nada no stdout, pois isso pode alterar o canal de comunicação.
Terceiro, certifique-se de passar todos os parâmetros que obtém, modificando conforme apropriado para o destino recém-descompactado.
fonte
Ele provavelmente está procurando compactação de transmissão de dados via rsync, não compactação de arquivos na outra extremidade.
Confira: http://jimmyg.org/blog/2007/rsync-basics.html
Parâmetros de compactação na página de manual:
Por padrão, o ssh faz sua própria compactação até certo ponto. Não sei quanto melhor o rsync é do que o ssh nativo. Se a maioria dos seus arquivos já estiver compactada em arquivos gzip, provavelmente não haverá muito o que o mecanismo de compactação do rsync possa fazer por você. Você pode espremer um arquivo apenas muito.
fonte