Backup compactado incremental sobre ssh

3

Até agora, estou fazendo backup de minhas coisas usando:

rsync -avz --delete /Local/Location/of/data/ -e ssh username@hostname:/Remote/Location/of/backup

O lado local está executando o Mac OS e o lado do servidor está executando o Linux. Não consigo alterar essa configuração.

Isso funciona muito bem (até onde eu sei) e transfere apenas as diferenças desde o último backup, bem como preserva todas as permissões etc. No entanto, essa abordagem tem uma desvantagem, ou seja, o backup no lado do servidor não é compactado (e, portanto, recebo avisos). Como posso adicionar alguma compressão do resultado final do processo?

A abordagem ingênua seria (dado que o destino é compactado):

  1. Descompacte o destino
  2. rsync as diferenças de local para remoto
  3. Compacte o backup no lado do servidor.

Qual seria a melhor prática aqui?

Editar

Eu me deparei com a noção de "Incremental Dumps". Parece que tar pode ser útil aqui. Este é um caminho a percorrer?

    
por Dror 22.03.2012 / 09:24

1 resposta

0

Uma solução simples seria usar um sistema de arquivos de compactação no lado do servidor. Consulte " Políticas de alocação e layout " na "Comparação de sistemas de arquivos" da Wikipédia para obter uma lista.

Outra opção é usar um sistema de arquivos que oferece instantâneos ou copy-on-write. btrfs seria um bom candidato para isso, já que oferece tudo menos um pequeno recurso: ainda não é seguro o bastante para backups. Não me entenda mal: o btrfs é ótimo; Eu estou usando por cerca de um ano, agora, e nunca tive problemas. Mas os backups precisam ser confiáveis em primeiro lugar.

Além disso, muitas vezes você não pode simplesmente criar uma partição em um servidor com um sistema de arquivos de sua preferência. Existem duas soluções alternativas:

  1. Você pode criar um arquivo enorme no servidor e criar o sistema de arquivos lá (apenas dê mkfs o caminho para o arquivo em vez de um nome de dispositivo). Depois disso, você pode montar este sistema de arquivos usando mount -o loop ponto de montagem do arquivo

  2. Se isso não for uma opção, mas você tiver FUSE (sistema de arquivos no espaço do usuário) ativado no servidor (é um módulo do kernel), então você pode usar o lessfs .

Por fim, você pode usar uma ferramenta de backup dedicada para essa tarefa. Existem muitas opções (como dar , rsnapshot ou pesquise " backup do linux "). Mas esteja avisado: eu procurei muitos anos, tentei muitas opções e ainda não encontrei nada tão simples como rsync e um poderoso sistema de arquivos.

    
por 22.08.2012 / 09:46

Tags