Como configurar o rsync com exclusão de arquivos para sincronizar só o necessário
Olá, viajante do conhecimento! Seja bem-vindo ao seu guia de confiança, onde aprendemos juntos, com calma e segurança. Hoje vamos explorar uma ferramenta poderosa do mundo Linux: o rsync. Vamos usar ele para sincronizar seus arquivos com o servidor da GeHost, mas com um toque especial: excluindo arquivos que não precisamos.
Imagine que você tem um site com milhares de arquivos, mas só quer atualizar as partes que mudaram — como um novo post, uma imagem nova ou um CSS atualizado. O rsync é perfeito para isso. E com a exclusão certa, evitamos sobrecarregar o servidor com arquivos desnecessários.
Este guia é para quem já tem acesso via SSH (como no terminal do seu computador) e quer automatizar atualizações com precisão. Vamos lá, com passos simples, como se fosse um conversa entre amigos.
Passo 1: Prepare-se com o que você precisa
Antes de tudo, certifique-se de que:
- Você tem acesso SSH ao seu servidor da GeHost (via painel.gehost.com.br).
- Seu computador tem o rsync instalado. No Linux ou macOS, ele já vem por padrão. No Windows, use o WSL ou o Git Bash.
- Seu projeto tem uma lista clara de arquivos que não devem ser sincronizados — como arquivos temporários, cache, arquivos de configuração local, etc.
Dica do Sensei: Arquivos como
.git,node_modules,cache/,logs/,Thumbs.dbouconfig.local.phpsão ótimos candidatos para exclusão.
Passo 2: Escreva a lista de arquivos para excluir
Antes de rodar o rsync, vamos criar uma lista de arquivos e pastas que queremos ignorar. Você pode fazer isso diretamente na linha de comando ou usar um arquivo de exclusão.
Exemplo de comando com exclusão direta:
rsync -avz --exclude='.git' --exclude='node_modules' --exclude='cache/' --exclude='logs/' --exclude='Thumbs.db' /caminho/local/ usuario@seu-servidor:/caminho/remoto/
Explicando:
-a: modo arquivar (mantém permissões, datas, links).-v: modo verboso (mostra o que está sendo feito).-z: compressão durante o envio.--exclude: define arquivos/pastas a serem ignorados.
Passo 3: Use um arquivo de exclusão (recomendado para projetos grandes)
Se você tem muitos arquivos para excluir, é melhor criar um arquivo com a lista. Isso deixa tudo mais limpo e fácil de manter.
Crie um arquivo chamado exclude.txt no seu projeto com conteúdo assim:
.git
node_modules
cache/
logs/
Thumbs.db
*.tmp
.DS_Store
config.local.php
Salve esse arquivo na raiz do seu projeto.
Depois, use o comando com o parâmetro --exclude-from:
rsync -avz --exclude-from='exclude.txt' /caminho/local/ usuario@seu-servidor:/caminho/remoto/
Pronto! O rsync vai ler o arquivo e ignorar tudo o que está lá.
Passo 4: Teste com o parâmetro --dry-run
Nunca faça uma sincronização importante sem testar primeiro! Use o --dry-run para ver o que aconteceria sem realmente enviar nada:
rsync -avz --dry-run --exclude-from='exclude.txt' /caminho/local/ usuario@seu-servidor:/caminho/remoto/
Isso mostra todos os arquivos que seriam enviados ou ignorados. Se tudo estiver certo, você pode rodar o comando sem o --dry-run.
Passo 5: Automatize (opcional, mas incrível)
Se você atualiza o site frequentemente, pode criar um script (um arquivo `.sh`) para rodar esse comando com um clique.
Exemplo de script (salve como sync.sh):
#!/bin/bash
echo "Iniciando sincronização..."
rsync -avz --exclude-from='exclude.txt' /caminho/local/ usuario@seu-servidor:/caminho/remoto/
echo "Sincronização concluída! 🎉"
Depois, torne-o executável:
chmod +x sync.sh
E execute com:
./sync.sh
Passo 6: Dicas finais do Sensei
Antes de sair por aí sincronizando tudo, lembre-se:
- Use sempre o
--dry-runantes da primeira sincronização real. - Evite excluir arquivos importantes, como
index.php,config.phpou arquivos de banco de dados. - Se tiver dúvidas sobre o caminho do seu site no servidor, acesse o painel da GeHost e verifique o diretório
public_html. - Se precisar de ajuda com o SSH ou com o acesso, entre em contato com o suporte da GeHost — eles estão aqui para te ajudar.
Importante: A GeHost é parte do grupo G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04). Todos os serviços são fornecidos por esta empresa, com suporte e garantias conforme seu plano no painel do cliente.
Se você gostou deste guia, compartilhe com quem também quer aprender com o coração. E lembre-se: cada arquivo que você sincroniza com sabedoria é um passo para um site mais leve, mais rápido e mais feliz.
Até a próxima, com amor e código. 🌿