Utilizando o comando rsync
Dica publicada em Linux / Software
Utilizando o comando rsync
Sintaxe:
rsync [opções] origem destino
Opções:
Há várias opções, aqui estão destacadas apenas as mais utilizadas:
Sincronizando diretórios locais:
Há um diretório com arquivos e o objetivo é manter uma cópia fiel do mesmo em outra localidade. O diretório destino deverá estar criado e ter permissões de escrita.
Para copiar ~/artigos para para /var/backups/artigos, executa-se:
rsync -Cravzpt ~/artigos/ /var/backups/artigos/
Sincronizando arquivos locais para um servidor remoto:
rsync [opções] origem usuario@host:destino
rsync -Cravzpt ~/artigos/ brito@10.1.1.1:/var/backups/artigos/
Sincronizando arquivos com exclusão:
No exemplo abaixo, estou sincronizando todos exceto os logs:
rsync -Cravzpt --exclude '*.log' /storage/plone-2.5.5/zeocluster2/ root@10.100.0.72:/storage/plone-2.5.5/zeocluster2/
Sincronizando arquivos do servidor para sua máquina local:
rsync [opções] usuario@host:origem destino
rsync -Cravzpt brito@10.1.1.1:/var/backups/artigos/ ~/artigos/
Listando arquivos do servidor, o diretório a ser listado será o destino:
rsync [opções] usuario@host:destino
rsync -Cravzpt brito@10.1.1.1:/var/backups/artigos/
rsync [opções] origem destino
Opções:
Há várias opções, aqui estão destacadas apenas as mais utilizadas:
- -C, --cvs-exclude - ignora arquivos CVS;
- -r, --recursive - recursivo;
- -a, --archive - modo arquivo; igual -rlptgoD (no -H,-A,-X);
- -z, --compress - comprime durante transferência;
- -p, --perms - preserva as permissões;
- -b, --backup - faz backup (veja --suffix & --backup-dir);
- --backup-dir=DIR - faz backups dentro da hierarquia DIR;
- --suffix=SUFFIX - sufixo de backup (padrão ~ w/o --backup-dir);
- -u, --update - pula arquivos recentes;
- -d, --dirs - transfere diretórios sem seu conteúdo, não recursivo;
- -l, --links - cópia symlinks como symlinks;
- -L, --copy-links - transforma symlink em sua referência, arquivo ou diretório;
- -X, --xattrs - preserva os atributos estendidos;
- --exclude=PATTERN - exclui o arquivo que coincide com o PATTERN;
- -t, --times - preserva a data de modificação;
- -v, --verbose - modo verboso.
Sincronizando diretórios locais:
Há um diretório com arquivos e o objetivo é manter uma cópia fiel do mesmo em outra localidade. O diretório destino deverá estar criado e ter permissões de escrita.
Para copiar ~/artigos para para /var/backups/artigos, executa-se:
rsync -Cravzpt ~/artigos/ /var/backups/artigos/
Sincronizando arquivos locais para um servidor remoto:
rsync [opções] origem usuario@host:destino
rsync -Cravzpt ~/artigos/ brito@10.1.1.1:/var/backups/artigos/
Sincronizando arquivos com exclusão:
No exemplo abaixo, estou sincronizando todos exceto os logs:
rsync -Cravzpt --exclude '*.log' /storage/plone-2.5.5/zeocluster2/ root@10.100.0.72:/storage/plone-2.5.5/zeocluster2/
Sincronizando arquivos do servidor para sua máquina local:
rsync [opções] usuario@host:origem destino
rsync -Cravzpt brito@10.1.1.1:/var/backups/artigos/ ~/artigos/
Listando arquivos do servidor, o diretório a ser listado será o destino:
rsync [opções] usuario@host:destino
rsync -Cravzpt brito@10.1.1.1:/var/backups/artigos/
Atualizações
As atualizações deste artigo e o mesmo em formato PDF pode ser encontrado em:Referências
- http://www.samba.org/ftp/rsync/rsync.html
- http://www.vivaolinux.com.br/artigo/Transferindo-arquivos-com-o-rsync?pagina=3
Parabéns pela dica, sempre uso o comando rsync para fazer backup de minha /home em uma HD externo usb e manter sincronizado.
Deus te abençõe