Como Automatizar Backups via Linha de Comando com um Script Agendado
Olá, amigo(a) desenvolvedor(a) ou administrador(a) de site! Seja bem-vindo(a) ao seu novo passo rumo à segurança e tranquilidade digital. Aqui, na GeHost, entendemos que seu tempo é precioso e seu site, uma extensão do seu trabalho. Por isso, vamos te ensinar, com carinho e clareza, como automatizar backups com um script agendado — tudo isso diretamente pelo SSH, com apenas alguns comandos simples.
Este guia é feito especialmente para quem quer ir além do básico, mas ainda assim se sente seguro. Vamos com calma, passo a passo. Você vai dominar isso antes mesmo de perceber!
Pré-requisitos
Antes de começar, confira estes itens:
- Você tem acesso ao SSH da sua conta (habilitado no painel do cliente).
- Seu plano de hospedagem permite o uso do SSH (todos os planos GeHost permitem).
- Conhecimento básico de comandos Linux (não se preocupe — vamos explicar tudo).
- Um cliente SSH instalado (como PuTTY, Terminal do macOS/Linux, ou VS Code com extensão SSH).
Dica do Sensei: Se você ainda não ativou o SSH, acesse o painel do cliente em painel.gehost.com.br, vá em SSH e ative o acesso. É rápido e seguro.
Passo 1: Acessando o Servidor via SSH
Abra seu cliente SSH e conecte-se usando:
- Host: Seu domínio ou IP (não vamos exibir aqui — você já sabe).
- Porta: 22
- Usuário: O nome da sua conta no cPanel (geralmente é o nome do domínio).
- Senha: A senha do cPanel.
Após conectar, você verá um prompt como:
usuario@servidor:~$
Passo 2: Criando o Script de Backup
Vamos criar um script simples que faz backup do seu public_html (pasta principal do site) e do banco de dados MySQL.
Abra o editor de texto nano com este comando:
nano backup.sh
Na tela que abrir, cole este conteúdo:
#!/bin/bash # Configurações DATA=$(date +%Y-%m-%d_%H-%M) NOME_SITE="meusite" PASTA_PUBLIC_HTML="/home/usuario/public_html" BANCO_NOME="nome_do_banco" USUARIO_BANCO="usuario_banco" SENHA_BANCO="senha_do_banco" DIRETORIO_BACKUP="/home/usuario/backups" # Cria diretório de backup se não existir mkdir -p $DIRETORIO_BACKUP # Faz backup da pasta public_html tar -czf $DIRETORIO_BACKUP/$NOME_SITE-$DATA.tar.gz $PASTA_PUBLIC_HTML # Faz backup do banco de dados MySQL mysqldump -u $USUARIO_BANCO -p$SENHA_BANCO $BANCO_NOME | gzip > $DIRETORIO_BACKUP/$NOME_SITE-$DATA.sql.gz # Mensagem de sucesso echo "Backup criado com sucesso em: $DIRETORIO_BACKUP/$NOME_SITE-$DATA.tar.gz e $DIRETORIO_BACKUP/$NOME_SITE-$DATA.sql.gz"
Dica do Sensei: Substitua os valores entre aspas (comomeusite,usuario,nome_do_banco, etc.) pelos seus dados reais. Você pode encontrar o nome do banco e do usuário no cPanel em painel.gehost.com.br → Bancos de Dados MySQL.
Após colar, pressione Ctrl + O para salvar, depois Enter. Depois, Ctrl + X para sair.
Passo 3: Tornando o Script Executável
Para que o sistema possa rodar o script, você precisa torná-lo executável. Use este comando:
chmod +x backup.sh
Passo 4: Testando o Script Manualmente
Antes de agendar, teste o script com um comando simples:
./backup.sh
Se tudo der certo, você verá uma mensagem dizendo que o backup foi criado com sucesso. Se houver erro, verifique os dados (nome do banco, senha, caminho) e tente novamente.
Passo 5: Agendando o Backup com Cron
Agendar tarefas no Linux é feito com o cron. Vamos configurar para rodar diariamente às 2h da manhã.
Abra o editor de cron com:
crontab -e
Se for a primeira vez, escolha o editor (geralmente nano).
Adicione esta linha no final do arquivo:
0 2 * * * /home/usuario/backup.sh
Essa linha significa: “Execute o script todos os dias às 2h da manhã”.
Salve com Ctrl + O, Enter, e saia com Ctrl + X.
Dica do Sensei: Se o caminho do script for diferente, use o caminho completo. Para descobrir, digitepwdno terminal para ver a pasta atual, ou uselspara listar arquivos.
Passo 6: Verificando o Agendamento
Para confirmar que o cron está funcionando, digite:
crontab -l
Isso mostrará todos os agendamentos. Você deverá ver a linha que criamos.
Passo 7: Monitorando os Backups
Os backups são salvos na pasta /home/usuario/backups. Você pode verificar se estão sendo criados com:
ls -la /home/usuario/backups
Se quiser, pode configurar um e-mail automático para avisar quando o backup for feito (mas isso é avançado — vamos deixar para outra hora).
Conclusão: Você está no controle!
Parabéns, mestre do comando! Agora você tem um sistema de backup automático, seguro e confiável — tudo feito por você, com seu próprio script, no seu próprio tempo.
Se precisar de ajuda, lembre-se: o suporte da GeHost está aqui para você. Acesse o painel do cliente e abra um ticket. Nós cuidamos de você, como cuidamos do nosso próprio site.
Até a próxima, com o coração leve e o backup sempre em dia. 🌟
Observação importante: Este guia foi elaborado com base nos serviços oficiais da GeHost (gehost.com.br), operada por G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04). Para qualquer dúvida fiscal, consulte sua fatura ou entre em contato com o suporte.