SSH & Avançado 48 visualizações

Como combinar cron e scripts shell para automatizar tarefas recorrentes complexas

Ver no WHMCS

Como combinar cron e scripts shell para automatizar tarefas recorrentes complexas

Olá, querido(a) cliente da GeHost! Seja bem-vindo(a) ao seu novo passo rumo à autonomia total sobre seu site. Você já sabe que o cPanel é o seu centro de comando, mas e se eu te disser que ele pode fazer muito mais do que apenas gerenciar arquivos ou e-mails? Hoje, vamos explorar um dos segredos mais poderosos da hospedagem: combinar o cron com scripts shell para automatizar tarefas que antes exigiam sua presença constante.

Imagine: você tem um site de eventos que precisa limpar logs a cada 24 horas, ou um sistema de backups que roda automaticamente às 2 da manhã. Tudo isso sem você precisar se lembrar de clicar em nada. É possível — e é exatamente o que vamos aprender juntos.

Sensei diz: "A automação não é um luxo. É o que transforma um site funcional em um sistema inteligente. E você já está no caminho certo."

Passo 1: Entenda o que é o cron e o que é um script shell

Antes de tudo, vamos descomplicar:

  • Cron é um agendador de tarefas no sistema Linux. Ele sabe quando executar algo — por exemplo, "todo dia às 3 da manhã".
  • Script shell é um arquivo de texto com comandos que o servidor entende. Pode ser um pequeno programa que faz algo como "excluir arquivos antigos" ou "enviar um e-mail de relatório".

Quando combinamos os dois, o cron executa o script automaticamente — como um relógio que acorda o sistema para fazer uma tarefa importante.

Passo 2: Acesse o cPanel e abra o Cron Jobs

Para começar, faça login no seu painel do cliente:

Tela de LOGIN do cPanel com campos Usuário e Senha + botão Log in

Depois de logado, você verá a tela principal do cPanel. Procure pelo grupo “Advanced” e clique em Cron Jobs.

Painel inicial (home) do cPanel com os grupos de ferramentas (E-mail, Arquivos etc.)

Passo 3: Crie um script shell simples (exemplo: limpar logs)

Vamos fazer um exemplo prático. Imagine que seu site gera arquivos de log que crescem demais. Vamos criar um script que apague os arquivos com mais de 7 dias.

  1. No cPanel, vá até File Manager (Gerenciador de Arquivos).
  2. Navegue até a pasta public_html (ou a pasta raiz do seu site).
  3. Clique em Novo Arquivo e nomeie-o como limpa_logs.sh.
  4. Abra o arquivo e cole este conteúdo:
#!/bin/bash
# Script para limpar arquivos de log com mais de 7 dias
find /home/seu_usuario/public_html/logs -name "*.log" -mtime +7 -delete
echo "Logs antigos foram limpos em $(date)"

Importante: Substitua seu_usuario pelo nome real da sua conta no cPanel (você pode ver isso no painel do cliente ou na URL do cPanel).

Salve o arquivo. Agora, vá até o Gerenciador de Arquivos e clique com o botão direito no arquivo limpa_logs.sh. Selecione Editar e verifique se o conteúdo está correto.

Passo 4: Torne o script executável

Antes de o cron rodar o script, ele precisa ser "executável". No Gerenciador de Arquivos, clique com o botão direito no arquivo limpa_logs.sh → Propriedades → marque a opção Executar (ou "Executar como script").

Pronto! Agora o sistema sabe que pode rodar esse arquivo.

Passo 5: Agende o script com o Cron

Volte ao Cron Jobs no cPanel. Clique em Add New Cron Job.

Configure assim:

  • Minuto: 0 (executa no minuto 0)
  • Horário: 3 (executa às 3 da manhã)
  • Dia do mês: * (todos os dias)
  • Mês: * (todos os meses)
  • Dia da semana: * (todos os dias da semana)
  • Comando: /home/seu_usuario/public_html/limpa_logs.sh

Leia com atenção: o caminho completo do script deve estar correto. Use o nome real da sua conta no lugar de seu_usuario.

Clique em Add New Cron Job. Pronto! Seu sistema agora limpará os logs automaticamente toda manhã às 3h.

Passo 6: Teste e monitore

Para testar, você pode executar o script manualmente:

  1. No cPanel, vá ao File Manager.
  2. Abra o arquivo limpa_logs.sh.
  3. Clique em Executar (ou use o botão de execução se disponível).

Depois, verifique se os arquivos antigos foram excluídos. Se sim, o script está funcionando!

Dicas práticas para ir além

  • Logs de execução: Adicione um comando no script para salvar o resultado em um arquivo, como: echo "Tarefa executada em $(date)" >> /home/seu_usuario/logs/cron.log.
  • E-mails de notificação: Use o comando mail para avisar quando algo der errado. Exemplo: echo "Erro no script" | mail -s "Alerta Cron" seu@email.com.
  • Evite erros: Sempre teste o script manualmente antes de agendá-lo.
Sensei diz: "Um bom script é como um bom amigo: confiável, claro e sempre presente. Comece simples, depois evolua. O poder está em você!"

Conclusão: sua jornada de automação começa agora

Com cron e scripts shell, você transforma sua hospedagem em um sistema inteligente, autossuficiente e livre de tarefas repetitivas. Não é magia — é conhecimento. E você já está no caminho certo.

Se precisar de ajuda com scripts mais complexos, consulte seu plano no painel do cliente ou entre em contato com o suporte da GeHost. Estamos aqui para te ajudar, sempre.

Com carinho,
Seu Sensei da GeHost

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.