arquivos de status logrotate extremamente grandes

1

O Apache2 em uma caixa do Ubuntu 16.04 estava mostrando problemas nos sites que ele hospeda. Estava com 100% de capacidade. Olhando ainda mais com du , a maioria do disco rígido de ~ 100gb foi preenchida por dois arquivos em /var/lib/logrotate/ .

logrotate tem arquivos que são chamados /var/lib/logrotate/status e /var/lib/logrotate/status.clean e ocupam muito espaço ... 30gb e 60gb.

Estou ciente de que logrotate é usado para limpar regularmente os arquivos de log, mas parece que não limpa seus próprios arquivos de 'log' por padrão. Eu resolvi o problema de espaço em disco, excluindo os dois arquivos em rm -rf /var/lib/logrotate/* .

( /var/lib/logrotate/status foi preenchido com novos logs de processos de rotação ao longo do dia)

Isso é algo que continuará acontecendo se o logrotate não rodar seus próprios logs?

    
por Angelo 18.12.2017 / 22:44

1 resposta

0

Você pode configurar uma tarefa cron para limpar ou rotacionar / truncar o arquivo logrotate.status de maneira rotineira. Eu recomendaria uma semanal se o volume do seu servidor for moderado, diariamente se o tráfego for muito intenso.

Para configurar uma tarefa cron semanal que reconfigure o arquivo logrotate.status:

  1. cron aberto crontab -e
  2. adicione a entrada * * * * 1 echo > /var/lib/logrotate.status

Para configurar a rotação do arquivo toda semana: Crie um script (certifique-se de que ele é executável pelo usuário do cron) e execute um cron semanal para chamá-lo.

Exemplo de script:

#!/bin/bash
/bin/mv /var/lib/logrotate.status.3 /var/lib/logrotate.status.4
/bin/mv /var/lib/logrotate.status.2 /var/lib/logrotate.status.3
/bin/mv /var/lib/logrotate.status.1 /var/lib/logrotate.status.2
/bin/mv /var/lib/logrotate.status /var/lib/logrotate.status.1

Para definir as permissões de arquivo do script:

chmod u+x [script-filename]

Formato da tarefa Cron:

* * * * 1 /full/path/to/your/script
    
por 19.12.2017 / 05:38