você está aqui: Home  → Arquivo de Mensagens

Fazendo backups com rsync

Colaboração: André Marques Saunite

Data de Publicação: 11 de março de 2011

Eu sempre faço backup das minhas coisas do trabalho pra um disco externo e, para manter a informação do que foi alterado de um backup pra outro eu normalmente crio pastas com as datas de cada backup.

O problema disso é que algumas vezes eu tenho gigas e gigas e mais gigas de backup, e não tem midia externa que suporte tudo isso.

Então pra fazer isso de forma limpa e eficaz, resolvi usar o rsync da seguinte forma:

  rsync -av --link-dest=/Backups/2010-09-07/ ~/Work/ /Backups/2010-09-08/ 

Dessa forma, tudo que já existe no backup anterior (no caso 2010-09-07) não vai ser copiado novamente para o novo backup, e sim será apenas feito um hard link para o arquivo já existente.

Dessa forma eu tenho muito mais gigas de backup do que a capacidade do meu disco externo, e posso apagar os diretórios mais antigos sem problema, pois os arquivos vão continuar ali nos diretórios mais recentes (a não ser que eu tenha apagado o arquivo no meu diretório work antes do último backup)

Os tamanhos dos diretórios são mostrados de maneira engraçada quando a gente faz isso:

  $ mkdir 1 2 
  $ dd if=/dev/zero of=./1/somefile bs=1k count=5120 
  5120+0 records in 
  5120+0 records out 
  5242880 bytes (5.2 MB) copied, 0.0218812 s, 240 MB/s 
  $ ls -lrth *  
  2: 
  total 0 
  
  1: 
  total 5.0M 
  -rw-r--r-- 1 andre wheel 5.0M Sep 13 17:32 somefile 
  $ ln 1/somefile 2/somefile-hard-link 
  $ ls -lrth * 
  1: 
  total 5.0M 
  -rw-r--r-- 2 andre wheel 5.0M Sep 13 17:32 somefile 
  
  2: 
  total 5.0M 
  -rw-r--r-- 2 andre wheel 5.0M Sep 13 17:32 somefile-hard-link 
  $ du -ksh *  
  5.0M    1 
  0       2 
  $ rm 1/somefile 
  $ ls -lrth *  
  2: 
  total 5.0M 
  -rw-r--r-- 1 andre wheel 5.0M Sep 13 17:32 somefile-hard-link 
  
  1: 
  total 0 
  $ du -ksh *  
  0       1 
  5.0M    2 

Muito útil!

André é um computeiro viciado em Linux e Rock'n'Roll, mantém um site que está tentando manter atualizado em http://saunite.wordpress.com, mas que aposta que o site vai morrer logo assim como http://saunite.blogspot.com e tantos outros...


Veja a relação completa dos artigos de André Marques Saunite

 

 

Opinião dos Leitores

Fabiocs
11 Mar 2011, 17:13
Parabéns.. ótima dica... se puder com o tempo mostrar mais exemplos do rsync...obrigado, abraço..
Marco D'Andrade
11 Mar 2011, 16:06
Muito util!

E isto prova que reler o MAN também ajuda :D

A alguns dias tivemos uma contribuição do bkptool (Criando backups incrementais usando rsync e hardlinks), que poderia ter 2 comandos unidos em 1 (cp -al e rsync) e a simplificação da compatibilidade com o FreeBSD!


Parabéns pela excelente dica!


Marco Antonio
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script