Os principais recursos do Rsync são:
* Copia links (atalhos), dispositivos, proprietários, grupos e permissões.
* Não requer privilégios sudo.
* As transferências de dados são feitas por pipeline para minimizar os custos de latência.
Usando o Rsync no Linux, você pode transferir e sincronizar arquivos e diretórios de um servidor remoto para outro (externo ou seu próprio PC).
Instalando o Rsync
No Debian e Ubuntu
apt-get install rsync
No CentOS
yum install rsync
Método de Transferência Externa
O Rsync pode transferir via SSH, nesse caso, o servidor receptor também deve ter suporte ao Rsync. Como todos os aplicativos em desenvolvimento há anos, existem muitas maneiras de usá-lo Rsync na Wikipédia. Pessoalmente, achei o seguinte muito útil:
Caso 1
Se você deseja transferir uma pasta exclusivamente para outro servidor via SSH:
rsync -vPa -e 'ssh -o StrictHostKeyChecking=no' /var/www/ 154.14.123.1:/var/www/
Ao adicionar o parâmetro StrictHostKeyChecking à conexão SSH, permitiremos que a impressão digital seja inserida automaticamente no arquivo .known_hosts.
Neste caso, transferiremos o conteúdo da nossa pasta /var/www/ para a pasta /var/www/ no servidor localizado no IP 154.14.123.1. Ao executar esta instrução, se ambos os servidores permitirem conexões SSH, a senha do servidor de destino será solicitada e a cópia dos dados será iniciada progressivamente.
Caso 2
Se você deseja transferir um VPS para outro VPS. O ideal é que ambos executem a mesma distribuição Linux, mas não é necessário fazer muitos experimentos, desde que você esteja excluindo arquivos e pastas críticos do VPS:
Você deve criar um arquivo de texto com os caminhos a serem excluídos durante a migração de dados:
/boot
/dev
/tmp
/sys
/proc
/backup
/etc/fstab
/etc/mtab
/etc/mdadm.conf
/etc/sysconfig/network*
Você pode nomeá-lo como excludes.txt
Posteriormente, assim como no caso 1, chamaremos o mesmo comando, mas com um parâmetro adicional (--exclude-from)
rsync -vPa -e 'ssh -o StrictHostKeyChecking=no' --exclude-from=/excludes.txt / 154.14.123.1:/
Conclusão
O Rsync é uma ferramenta muito poderosa para migração segura de dados. É muito importante que ambos os servidores (remoto e externo) tenham suporte ao Rsync para realizar essa tarefa.
Em nossa experiência com VPS, trabalhar com essa ferramenta tem sido muito satisfatório, permitindo-nos realizar grandes migrações de dados com muito pouco esforço. Ela possui mais de cem opções ou listas de parâmetros que convidamos você a descobrir e experimentar.