DevSecOps

16 abr, 2013

Sincronizando dados com rsync – Parte 01

Publicidade

O comando rsync dispensa apresentações. É o famoso comando “mão na roda” pela sua infinidades de possibilidades de utilização. A partir deste post iremos demonstrar alguns exemplos de utilização do rsync para futuras implementações de acordo com sua necessidade.

Sincronizando

A ferramenta rsync é perfeita para transferir grandes volumes de dados. Se o receptor tiver uma cópia mais antiga dos dados, o rsync verifica as diferenças entre as versões na origem e destino dos dados e só transfere aqueles que tiverem mudado. A sintaxe genérica do programa é apresentada abaixo:

# rsync [opções] origem destino

A escolha da origem e do destino é importantíssima, entretanto é necessário decidir a direção cuidadosamente para evitar uma catástrofe com seus dados.

Utilização

O rsync permite que se monitore a operação de transferência de dados: chamar o rsync com a opção -n faz o programa realizar uma rodada de testes:

# rsync -n dir1/* dir2/

Entretanto, você gostaria de realizar a transferência de arquivos e links simbólicos. Utilizando a opção -l faz o rsync incluir os links simbólicos na transferência, conforme exemplo abaixo:

# rsync -rl dir3/* dir4/

Para fazer um backup local, basta informar a pasta de origem e a pasta de destino, para onde os arquivos serão copiados, conforme exemplo abaixo:

# rsync -av /mnt/hda6/trabalho/ /mnt/backup/

A opção “-a” (archive) faz com que todas as permissões e atributos dos arquivos sejam mantidos, da mesma forma que ao criar os arquivos com o tar, e o “v” (verbose) mostra o progresso na tela.

Desejo habilitar a compressão, pois possuo pouco espaço:

# rsync -zvr /home/ziggy/ /root/startdust

* opção -z (compress) – compacta os dados dos arquivos antes de transferi-los.

O rsync apresenta diversas possibilidades de acordo com a sua necessidade. Hoje, demos nosso “pontapé inicial” na apresentação de exemplos, nos próximos artigos iremos dar continuidade apresentando outras funcionalidades. Se você utiliza o comando rsync e gostaria de compartilhar sua implementação, fique a vontade e envie no ludolf@sejalivre.org.