Sempre é bom se preocupar com o espaço de armazenamento em nossos servidores. Algumas vezes nem percebemos que arquivos de logs podem acumular e tomar bastante espaço no HD.

Por isso decidi mostrar como faço para limpar de tempos em tempos, arquivos antigos e desnecessários de logs do Apache (no Ubuntu, eles ficam em /var/log/apache2/).

Comando para apagar os arquivos

Para encontrar os arquivos necessários e apagar os mais antigos, você pode usar o comando:

find '/var/log/apache2' -mtime +6 -type f -delete

Ele encontra todos os arquivos com 7 dias de idade e remove-os.

Se você quiser ser específico com o nome do arquivo, pode adicionar o parâmetro -name:

  • find '/var/log/apache2' -mtime +6 -type f -name '*.log' -delete 👉 vai apagar todos os arquivos que terminarem em .log
  • find '/var/log/apache2' -mtime +6 -type f -name 'meusite*' -delete 👉 vai apagar todos os arquivos que começarem com meusite

Use o ⏱ CRON para automatizar o processo

Seria bem chato ter de rodar esse comando todos os dias manualmente. Por isso, podemos usar o crontab para automatizar essa tarefa pra gente.

  1. digite contab -e para abrir as configurações de seu cron.
  2. agora, no final do arquivo, acrescente esta linha:
    @daily find '/var/log/apache2' -mtime +6 -type f -delete

Agora saia do modo de edição e salve o arquivo (ctrl + x).

Todos os dias o CRON irá verificar se precisa fazer uma faxina em seus logs. Sinta-se a vontade para aplicar esta limpeza para qualquer outra pasta em seu sistema.

Como apagar arquivos antigos com o CRON (Linux / Ubuntu)
5 (100%) 2 votos