Como usar o rsync via SSH para sincronizar arquivos entre dois servidores imprimir

  • 0

Sincronizando arquivos entre dois servidores com rsync via SSH

Oi! Aqui é a Sensei da GeHost 🧑‍🏫 E hoje eu vou te ensinar uma ferramenta poderosa (mas tranquila, viu?) pra quem precisa copiar ou sincronizar arquivos entre dois servidores: o rsync.

Se você já tentou mover uma pasta cheia de arquivos usando FTP e ficou horas esperando (ou pior, travou no meio), vai amar essa solução. O rsync é rápido, inteligente e, o melhor: se a transferência cair, dá pra continuar de onde parou.

💡 Dica da Sensei: esse guia é pra quem já tem acesso SSH liberado no servidor e uma noção básica de terminal/linha de comando. Se você nunca usou terminal, não se preocupe — fica com a gente e vai dar tudo certo, vamos com calma!

O que é o rsync, afinal?

Pensa no rsync como um "assistente de mudança" muito esperto. Em vez de pegar todos os seus móveis e levar pra casa nova (mesmo os que você já tinha levado antes), ele olha o que já está lá do outro lado e só transporta o que é novo ou mudou. Isso economiza tempo, banda e paciência.

  • Copia arquivos e pastas entre dois servidores (ou entre seu computador e um servidor).
  • Transfere só as diferenças, não tudo de novo a cada vez.
  • Preserva permissões, datas e estrutura de pastas.
  • Se a conexão cair no meio, você roda o comando de novo e ele retoma de onde parou.

Pré-requisitos antes de começar

  1. Acesso SSH habilitado nos dois servidores (origem e destino).
  2. Usuário e senha (ou chave SSH) de acesso.
  3. Um terminal — pode ser o terminal do seu computador (Mac/Linux) ou um programa como o PuTTY/WSL no Windows.
💡 Dica da Sensei: se você não sabe se tem acesso SSH liberado no seu plano, dá uma olhadinha no seu painel.gehost.com.br ou chama a gente no suporte que a equipe confirma certinho pra você.

Passo a passo: sincronizando arquivos com rsync

1. Conecte-se ao servidor de origem via SSH

Abra o terminal e conecte no servidor onde estão os arquivos que você quer copiar:

ssh usuario@servidor-origem.com

Troque usuario e servidor-origem.com pelos dados reais da sua conta. Ele vai pedir a senha (ou usar sua chave SSH, se você já tiver configurado uma).

2. Monte o comando básico do rsync

A estrutura mais simples de um comando rsync entre dois servidores é assim:

rsync -avz -e ssh /caminho/da/pasta/origem/ usuario@servidor-destino.com:/caminho/da/pasta/destino/

Vamos entender cada pedacinho, com calma:

  • -a (archive): preserva permissões, datas, links e estrutura de pastas — praticamente uma cópia fiel.
  • -v (verbose): mostra na tela o que está sendo copiado, pra você acompanhar.
  • -z (compress): comprime os dados durante a transferência, deixando mais rápido.
  • -e ssh: diz pro rsync usar o protocolo SSH (conexão segura e criptografada).
💡 Dica da Sensei: repara na barra "/" no final da pasta de origem! Ela faz toda a diferença: com a barra, o rsync copia o conteúdo da pasta; sem a barra, ele copia a pasta inteira dentro do destino. Já vi gente se confundir com isso e duplicar caminho sem querer — presta atenção nessa barrinha 😉

3. Exemplo prático

Imagina que você quer sincronizar a pasta public_html do seu site de um servidor pra outro. O comando ficaria mais ou menos assim:

rsync -avz -e ssh /home/usuario/public_html/ usuario@servidor-destino.com:/home/usuario/public_html/

Ao rodar, ele vai pedir a senha do servidor de destino (a não ser que você já tenha uma chave SSH configurada) e começar a mostrar, linha por linha, os arquivos sendo enviados.

4. Fazendo um "teste seco" antes de sincronizar de verdade

Ficou com receio de mexer em arquivos importantes? Ótima cautela! O rsync tem um modo de simulação, que mostra o que seria feito, sem alterar nada de verdade:

rsync -avzn -e ssh /caminho/origem/ usuario@servidor-destino.com:/caminho/destino/

Repara no n extra ali no final das opções (-avzn) — ele significa "dry-run", ou seja, "só me mostra, não faça ainda". Depois de conferir que está tudo certo, é só rodar o comando de novo sem o n.

5. Removendo arquivos que não existem mais na origem (opcional)

Se você quer que o destino fique idêntico à origem — inclusive apagando lá os arquivos que não existem mais aqui — use a opção --delete:

rsync -avz --delete -e ssh /caminho/origem/ usuario@servidor-destino.com:/caminho/destino/
⚠️ Atenção da Sensei: essa opção apaga arquivos no destino que não existirem mais na origem. É poderosa, mas tem que usar com carinho — sempre rode primeiro com -n (o teste seco do passo anterior) pra ver exatamente o que seria apagado antes de confirmar de verdade.

Dicas finais da Sensei 🧘

  • Prefira configurar uma chave SSH em vez de digitar senha toda vez — é mais rápido e mais seguro, principalmente se você for automatizar essa sincronização.
  • Sempre teste com -n antes de rodar algo que apaga ou sobrescreve muitos arquivos.
  • Se o comando parecer não conectar, confirme se o SSH está liberado na sua conta e se você está usando o usuário/caminho corretos.
  • Ficou travado em algum passo? Chama a gente no suporte que a equipe te ajuda a revisar o comando com calma.
🌱 Pra fechar: rsync parece assustador de primeira, mas depois que você usa uma vez, vira seu queridinho pra qualquer sincronização de arquivos. Qualquer dúvida, é só chamar — a gente tá aqui pra isso! 💚

Esta resposta lhe foi útil?

« Retornar