Como automatizar backups via linha de comando com um script agendado imprimir

  • 0

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 (como meusite, 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.brBancos 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, digite pwd no terminal para ver a pasta atual, ou use ls para 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. 🌟

Tela de Backup no cPanel

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.


Esta resposta lhe foi útil?

« Retornar