Correio eletrónico

Esvaziar a conta de sistema do cPanel e evitar que os avisos do Cron a encham

Revisto a 4 min de leitura espaço de email cron

Em todos os alojamentos com cPanel existe uma conta de correio de sistema, cujo nome é o seu utilizador do cPanel (sem @). Recebe avisos automáticos, sobretudo a saída das tarefas agendadas (Cron). Se não a vigiar, pode acumular milhares de mensagens e ocupar vários gigas do espaço do seu alojamento.

Porque se enche

Por predefinição, sempre que uma tarefa Cron produz alguma saída, o cPanel envia um email com ela. Uma tarefa que é executada a cada poucos minutos gera centenas de emails por dia e, com o tempo, ocupam muito.

Esvaziar a conta de sistema

Com o Email Disk Usage (recomendado)

É a forma mais rápida de apagar muitos emails de uma só vez:

  1. Entre no cPanel a partir da área de cliente.
  2. Abra Email > Email Disk Usage.
  3. Na lista pendente Account, escolha (System Account).

Email Disk Usage do cPanel com a conta de sistema selecionada na lista pendente Account

  1. Verá as pastas (INBOX, Sent…) com o espaço que cada uma ocupa. Clique em Manage junto à que quiser limpar.
  2. Escolha o que apagar:
    • All messages: todos os emails da pasta.
    • year old or more: os que têm mais de um ano.
    • Previously viewed: os que já foram lidos.
    • 30 MB in size or more: os que pesam 30 MB ou mais.
  3. Clique em Delete Permanently. A eliminação não pode ser anulada.

Se os avisos do Cron lhe servem para detetar erros, veja os mais recentes antes de os apagar todos: podem indicar-lhe que tarefa está a falhar.

A partir do webmail

Se houver poucas mensagens:

  1. No cPanel, abra Email > Email Accounts.
  2. Procure a conta de sistema (o seu utilizador do cPanel, sem @) e clique em Check Email.
  3. Selecione as mensagens, elimine-as e esvazie o Lixo.

Para mais formas de libertar espaço de correio, consulte libertar espaço numa conta de correio.

Deixar de receber os avisos do Cron

  1. Entre em cPanel > Advanced > Cron Jobs.
  2. Em Current Cron Jobs, clique em Edit em cada tarefa.
  3. Acrescente no fim do comando:
> /dev/null 2>&1

Por exemplo:

php /home/usuario/public_html/script.php > /dev/null 2>&1
  1. Clique em Edit Line para guardar.

Assim, a saída normal e os erros dessa tarefa são descartados e não é enviado nenhum email.

Receber avisos só de algumas tarefas

Se quiser que algumas tarefas o avisem e outras não:

  1. Em Cron Jobs, na secção Cron Email, escreva o endereço onde quer receber os avisos (por exemplo, admin@tudominio.com) e clique em Update Email. Assim deixam de chegar à conta de sistema.
  2. Acrescente > /dev/null 2>&1 no fim das tarefas das quais não quer avisos.
  3. Não acrescente nada às tarefas das quais quer receber a saída.

Não serve colocar MAILTO="admin@tudominio.com" no início do comando de uma tarefa: o cPanel não o interpreta como destinatário dos avisos e o email continuará a ir para o endereço geral do Cron.

Se um script tiver de avisar pessoas diferentes, o mais fiável é ser ele próprio a enviar o email (por exemplo, com a função de correio da sua aplicação) e acrescentar-lhe > /dev/null 2>&1 no Cron.

Tem mais detalhes sobre como criar e editar tarefas no guia de tarefas Cron.

Também lhe pode ser útil

Algo não bate certo ou mudou? Diga-nos e revemos.