Como automatizar backups do site com um script bash agendado via cron
Olá, querido cliente! Seja bem-vindo ao seu novo passo rumo à segurança e tranquilidade digital. Aqui na GeHost, acreditamos que seu site merece cuidados especiais — e um backup automatizado é como ter um guarda-costas 24 horas por dia. Vamos juntos, com calma, passo a passo, transformar esse processo em algo simples, seguro e totalmente automatizado?
Este guia é feito especialmente para você que quer proteger seu site com um script em Bash, agendado pelo cron — tudo via SSH, no seu painel cPanel. Não se preocupe se você ainda não sabe o que é SSH ou cron: eu vou te ensinar com carinho, como um verdadeiro Sensei.
Antes de começar: o que você precisa
- Seu acesso SSH (ativado na sua conta — consulte seu plano no painel).
- Conhecimento básico de comandos no terminal (não precisa ser expert).
- Um editor de texto no terminal (como
nanoouvim). - Um domínio hospedado com a GeHost (com acesso ao cPanel).
Dica importante: sempre faça um backup manual antes de automatizar — assim, você tem certeza de que tudo está funcionando. Você pode fazer isso diretamente no cPanel, na seção Backup.
Passo 1: Acesse seu servidor via SSH
Para isso, você pode usar um cliente como Putty (Windows), Terminal (macOS/Linux) ou qualquer outro que suporte SSH.
Abra o terminal e digite:
ssh seu_usuario@seu_dominio.com.br
Substitua seu_usuario e seu_dominio.com.br pelos dados reais da sua conta (você encontra isso no painel do cliente).
Passo 2: Crie o script de backup
Vamos criar um arquivo chamado backup.sh que conterá as instruções para fazer o backup.
No terminal, digite:
nano backup.sh
Isso abrirá o editor nano. Agora, cole o seguinte conteúdo:
#!/bin/bash
# Caminho do seu site (public_html)
SITE_PATH="/home/seu_usuario/public_html"
# Nome do backup (data + hora)
BACKUP_NAME="backup_$(date +'%Y-%m-%d_%H-%M-%S').tar.gz"
# Caminho onde salvar o backup
BACKUP_DIR="/home/seu_usuario/backups"
# Cria o diretório de backups se não existir
mkdir -p "$BACKUP_DIR"
# Faz o backup dos arquivos
tar -czf "$BACKUP_DIR/$BACKUP_NAME" "$SITE_PATH"
# Mensagem de sucesso
echo "Backup criado com sucesso: $BACKUP_DIR/$BACKUP_NAME"
Importante: troque seu_usuario pelo nome real da sua conta no cPanel. Se não souber, verifique no painel do cliente.
Depois de colar, pressione Ctrl + O para salvar, depois Enter para confirmar. Por fim, Ctrl + X para sair.
Passo 3: Torne o script executável
No terminal, execute:
chmod +x backup.sh
Isso permite que o sistema execute o script.
Passo 4: Agende o script com cron
Para agendar o backup, vamos usar o cron. Abra o editor de tarefas agendadas com:
cron -e
Seu editor padrão (como nano) será aberto. Adicione esta linha no final do arquivo:
0 2 * * * /home/seu_usuario/backup.sh
Essa linha significa: "execute o script backup.sh todos os dias às 2 da manhã".
Salve com Ctrl + O, Enter, e saia com Ctrl + X.
Dica: se quiser fazer o backup apenas uma vez por semana, troque para:
0 2 * * 0 /home/seu_usuario/backup.sh
— onde 0 é domingo.
Passo 5: Verifique se o cron está funcionando
Para testar, você pode executar o script manualmente:
./backup.sh
Se não houver erros, o backup será criado na pasta /home/seu_usuario/backups.
Depois, verifique se o arquivo apareceu lá:
ls /home/seu_usuario/backups
Se sim, parabéns! Seu sistema de backup está funcionando.
Passo 6: Mantenha o backup seguro
Os backups são salvos no seu servidor. Se quiser mais segurança, considere:
- Enviar o backup para um serviço de nuvem (como Google Drive ou Dropbox) via script.
- Limpar backups antigos periodicamente para não sobrecarregar o espaço.
Se precisar, posso te ajudar a escrever um script que faz isso automaticamente!
Conclusão: você está no controle
Automatizar backups não é só técnica — é cuidado. Com esse script, seu site está protegido mesmo quando você não está olhando. E tudo isso com um toque humano, feito com amor, como deve ser.
Se tiver dúvidas, problemas ou quiser ajustar o script, é só entrar em contato com o suporte da GeHost — e lembre-se: você tem 30 dias grátis após a entrega para qualquer dúvida.
Com carinho,
Sensei da GeHost
*Grupo G e Soluções e Eventos LTDA – CNPJ: 46.647.904/0001-04*