rsync
Published on June 23, 2013.
rsync é um programa de sincronização de arquivos locais ou remotos. A seguir algumas dicas.
Sincronização
Para a sincronização entre duas pastas podemos utilizar:
$ rsync -zvr /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Arquivamento
Para preservar informações dos arquivos a serem sincronizados precisamos utilizar:
$ rsync -azv /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Preservando arquivos
Ao sincronizar arquivos não desejamos sobrescrever os arquivos no destino se estes tiverem sido modificados. Nesse caso devemos utilizar:
$ rsync -azvu /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Removendo arquivos
Após a primeira sincronização, é possivel de você remover um arquivo na origem e desejar que o mesmo seja removido no destino. Para isso:
$ rsync -azv --delete /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Atualização apenas
Após a primeira sincronização, é possível que você deseje apenas atualizar os arquivos criados na sincronização anterior, i.e., ignorar os novos arquivos criados. Para isso:
$ rsync -azv --existing /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Filtro
É possível filtrar os diretórios a serem sincronizados. :
$ rsync -azv --include /regex/ --exclude /regex/ /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
Diretórios
Uma parte importante do rsync é a criação ou não da pasta raiz. A melhor forma de deixar isso claro é por meio de exemplos. Para iniciar consideremos:
$ rsync -azv /caminho/do/arquivo/de/origem /caminho/da/pasta/de/destino/
Esse comando irá copiar /caminho/do/arquivo/de/origem para o diretório
dentro do diretório /caminho/da/pasta/de/destino.
Se ao invés de um arquivo informarmos um diretório, como em:
$ rsync -azv /caminho/da/pasta/de/origem /caminho/da/pasta/de/destino
O diretório /caminho/pasta/de/origem e seus arquivos serão copiados
para dentro da pasta /caminho/da/pasta/de/destino. Se existir uma
barra, /, ao final da origem, e.g., :
$ rsync -azv /caminho/da/pasta/de/origem/ /caminho/da/pasta/de/destino
será copiado apenas os arquivos dentro de /caminho/da/pasta/de/origem.
Referências
Tags: