Copiar ficheiros para outro servidor com o rsync, em segurança

O rsync copia pastas entre dois computadores por SSH e, nas vezes seguintes, só envia o que mudou. É a ferramenta mais usada para tirar uma cópia do seu VPS para outro sítio, que é a regra de ouro de qualquer cópia: uma cópia no mesmo disco perde-se com ele (copiar um VPS: instantâneos ou ficheiros). O comando típico é rsync -avz /var/www/ utilizador@outro-servidor:/copias/www/. Num VPS não gerido, estas cópias são suas.

Passo a passo

1 Confirme que há rsync nos dois lados. rsync --version. Em Debian e Ubuntu instala-se com sudo apt install rsync. Precisa também de acesso SSH ao destino (primeiros passos com o VPS).
2 Faça primeiro um ensaio. rsync -avzn /var/www/ utilizador@outro-servidor:/copias/www/. O n (dry-run) mostra o que seria copiado, sem copiar nada.
3 Faça a cópia a sério retirando o n: rsync -avz /var/www/ utilizador@outro-servidor:/copias/www/. Se o destino usa outra porta de SSH: rsync -avz -e "ssh -p 2222" ... (2222 é um exemplo).
4 Confira o resultado no destino: ls -l e o tamanho com du -sh. Uma cópia só vale depois de a restaurar uma vez: fazer a sua própria cópia e testá-la.
5 Automatize. Para correr sem palavra-passe, use uma chave SSH só para a cópia e agende com o cron (cópias automáticas com cron). Guarde o resultado num registo com --log-file=/var/log/rsync-copia.log.

As opções que vai usar

Opção O que faz
-a Modo de arquivo: mantém permissões, donos, datas e ligações, e vai pelas subpastas.
-v Mostra o que está a fazer.
-z Comprime durante o envio. Poupa ligação, gasta processador; para ficheiros já comprimidos (imagens, vídeo) pouco serve.
-n / --dry-run Ensaia sem copiar. Use sempre antes de uma opção perigosa.
--exclude='cache/' Deixa de fora o que não vale a pena copiar (caches, ficheiros temporários).
--delete Apaga no destino o que já não existe na origem. Faz um espelho, e também espelha os apagamentos.
-P Mostra o progresso e permite retomar um ficheiro grande interrompido.
A barra no fim do caminho muda o resultado. /var/www/ (com barra) copia o conteúdo da pasta; /var/www (sem barra) copia a pasta inteira para dentro do destino. Errar aqui cria uma pasta a mais, ou mistura ficheiros onde não devia. Ensaie com -n.
O --delete propaga os erros. Se apagou um ficheiro por engano na origem, o espelho apaga-o no destino à próxima execução, e a cópia deixa de o ter. Para uma cópia que o proteja de apagamentos, mantenha várias cópias antigas (pastas por data) em vez de um espelho único.
Bases de dados não se copiam com o rsync enquanto trabalham. Exporte-as primeiro (mysqldump e pg_dump) e copie o ficheiro exportado. Use um utilizador só para as cópias, em vez do root, e limite o que ele pode fazer no destino.

Quer saber o que o seu plano de VPS inclui em matéria de cópias? Diga-nos o nome do serviço e confirmamos.

Abrir um pedido de suporte

VEJA TAMBÉM

Copiar um VPS: instantâneos ou ficheiros

Cópias automáticas da sua aplicação

Cópias com mysqldump e pg_dump

Fazer a sua própria cópia e testá-la

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 5.940,00 Kz/mês (plano de 3 anos, com cupão)

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?