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