Sincronizar em linux com rsync

    Código QR para este tuto

Iniciação ao rsync, ferramenta de sincronização que permite realizar cópias de segurança mesmo entre sistemas remotos, de forma rápida e segura.


imagem O rsync é daquelas ferramentas que todo o utilizador Linux terá de dominar mais cedo ou mais tarde. Efetivamente trata-se de um importante software que permite sincronizar pastas no mesmo sistema ou em sistemas diferentes.
O nome rsync deriva da expressão “Remote Syncronization”, ou seja, Sincronização Remota. Esta ferramenta permite copiar ficheiros de forma rápida, versátil e segura.
Ao nível do seu funcionamento, em termos mais concretos, o rsync consegue replicar ficheiros localmente, na mesma máquina, ou através de máquinas remotas, ligadas entre si por uma sessão em shell. Para além deste aspeto o rsync oferece uma variadíssima gama de opções que permitem controlar o seu comportamento de uma forma muito versátil. Um dos aspetos mais valorizados do rsync deriva da utilização de um algoritmo próprio que permite perceber e otimizar a quantidade de dados a serem transferidos. Este aspeto tem um impacto profundo no rendimento do rsync. O que o software faz é verificar rapidamente que ficheiros se alteraram desde a última sincronização e transferir apenas os que se alteraram.
Detalhe:
O algoritmo utilizado pelo rsync é o delta-transfer. Este algoritmo determina os dados a serem enviados da origem para o destino, mediante um check entre ambos. Sempre que é ordenada uma cópia, o delta-transfer averigua rapidamente se os ficheiros a copiar já existem no destino e, quando existem, averigua quais são as diferenças entre ambos os ficheiros, enviando apenas os dados necessários para que o ficheiro de destino seja igual ao original.

Tentando fornecer uma visão mais prática sobre o funcionamento deste software, vamos estabelecer que temos o “diretório_fonte” em nosso sistema e que queremos replicá-lo para outra localização no nosso sistema, por uma questão de segurança, sob o nome de “diretório_destino”. Então, para sincronizar o nosso conteúdo fazemos:
rsync diretorio_fonte -r diretorio_destino
Com este comando estamos simplesmente a dizer ao rsync para copiar o diretorio_fonte para o diretorio_destino. A opção -r indica que a cópia seja recursiva, ou seja, será copiado o diretorio_fonte e todo o seu conteúdo.
Se retirarmos a opção -r podemos fazer o seguinte:
rsync diretorio_fonte -d diretorio_destino
Desta vez estamos igualmente a dizer ao rsync para copiar o diretorio_fonte para o diretorio_destino, no entanto, com a opção -d estamos a indicar que não seja copiado o conteúdo do diretório. Ou seja, apenas o diretório será copiado.

Uma das vantagens do rsync é a capacidade de fazer mirroring. Vejamos como podemos fazer um mirror de nosso diretório fonte:
rsync –a diretorio_fonte diretorio_destino
Simples não? Na realidade ao passar a opção –a estamos a dizer ao programa para executar uma sincronização completa dos ficheiros a copiar.
Detalhe:
Numa tradução à letra, Mirroring significa “espelhar”. Trata-se de uma técnica de cópia, na qual, os ficheiros ou diretórios são replicados exatamente como existem na origem. Ou seja, fazemos uma duplicação exata de um ficheiro, copiando inclusive as suas propriedades, proprietários ou permissões. Esta modalidade é muito utilizada em backups de sistemas pois permite duplicar fielmente sistemas inteiros.
Vejamos também como podemos fazer um mirror de nosso diretório fonte através de uma rede para um sistema remoto. Vamos utilizar ssh por razões de segurança e iremos contactar com o sistema testes.linuxando.com, no qual existe um utilizador de nome aprendiz :
rsync –a –e ssh diretorio_fonte aprendiz@testes. linuxando.com: diretorio_destino
Note-se que, desta vez, para além da opção de mirroring, introduzimos a opção -e ssh a qual instrui o programa para estabelecer uma conexão pela rede para o sistema e utilizador fornecidos.
A favor:
Rapidez, derivada da utilização do algoritmo delta-transfer e da compressão dos dados transmitidos;
Capacidade para copiar links;
Capacidade para copiar ficheiros, informação de donos, grupos e suas permissões;
Capacidade de replicação seletiva de diretórios;
Capacidade de transferir dados por meio de diferentes shell remotas, por exemplo o ssh ou rsh;
Não exige ser executado pelo super utilizador;
Excelente adaptação a funcionalidades de mirroring com capacidades de conexão anónima ou autenticada.
Contra:
O único ponto negativo que encontramos para o rsync é a existência de uma curva de aprendizagem mais acentuada, ou seja, leva algum tempo até um utilizador dominar esta ferramenta.
Esta é apenas uma visão geral do comando rsync, uma vez que este integra inúmeras opções de utilização, por exemplo:
–o os ficheiros a copiar irão manter os proprietários de origem;
–g os ficheiros a copiar irão manter os grupos de origem;
–p os ficheiros a copiar irão manter as permissões de origem;
–v o programa irá imprimir informação sobre a execução da sincronização à medida que esta é realizada.

Pelas razões explicadas, o rsync é uma ferramenta obrigatória para administradores de sistemas Linux, sendo mesmo uma ferramenta predileta para backups/cópias de segurança, replicação de sistemas completos/mirroring, replicação de estruturas de pastas, ou mesmo para cópias simples de ficheiros, tal é a sua versatilidade.
Terminamos aqui a nossa abordagem inicial ao comando rsync. Veja também como poderá combinar a utilização do rsync com os cronjobs, com vista a automatizar suas tarefas de manutenção de sistemas.

Divirta-se!
A equipa Linuxando

Curtir este comando!
40 curtiram
Dica Linuxando

Visualize quanto tempo leva a executar um programa ou comando

[root@linuxando] >_

time nome_comando


Submetido por Equipe linuxando

6 curtiram
Curtir!Ver nova dica
imagem

17 curtiram
Curtir!
Receber uma dica linux agora
Receba dica agora
logo!

32 curtiram
Curtir!
termos e condições | contato | 2024 Designed and developed by WebAzores .:. © All Rights Reserved.
Receber dica Linux por SMS agora
Brasil
Portugal
No Brasil envie SMS para o número 49602 com a palavra

FOR2 LINUX DICA

Custo R$ 1,99 + tributos

Ao enviar a mensagem, por favor aguarde a confirmação do pagamento e evite enviar a mesma mensagem diversas vezes. Lembre-se de sempre pedir autorização de um adulto antes de realizar a compra. As transações podem custar R$ 1,99 + tributos, R$ 4,00 + tributos ou custa R$ 9,99 (R$ 6,99 + tributos).Instruções para a utilização do método de pagamento Pagamento Celular da Fortumo: http://fortumo.com/btc. R$ 1,99 + tributos, R$ 4,00 + tributos - Serviço disponível para as operadoras CLARO, OI, TIM e VIVO. R$ 9,99 - Serviço disponível para as operadoras CLARO, OI e VIVO.
×