Como configurar o Logrotate no Linux (para impedir que seu servidor fique sem espaço)

A maioria dos serviços no Linux gera arquivos de registro, geralmente almacenados em /var/log/ . Como são arquivos individuais de texto sem formato, mas podem ser realmente grandes, o ponto pode ser executado no servidor sem espaço.

índice de conteúdo

  1. Qu hace Logrotate?
  2. Instalação de Logrotate (si an no lo tiene)
  3. Cmo funciona Logrotate

Qu hace Logrotate?

Logrotate ayuda a administrar los archivos de registro y evita que se acumulen. Arquivar automaticamente o arquivo de registro atual, criar um novo vaco e eliminar os arquivos realmente antigos despus de rotarlo varias veces. O tempo predeterminado pode ser estabelecido em um valor muy alto (nginx por defeito é um ao de registro), por que você pode ter problemas se não houver mudança nos arquivos de configuração.

El tamao de sus archivos varia segn el service y deber configurar logrotate en consecuencia. Si desea saber cunto espacio cada servicio con los registros, puede usar el du mando:

 du -h /var/log/ | classificar -hr

La mayora de los archivos de registro estarn em /var/log/ , entonces du totalizar todos os archivos de registro y los exibem em uma boa lista (cortesa de sort -hr para 'legible por humanos'):

Esto solo muestra directorios, por lo que deber usar ls -sh para encontrar el tamao de archivos individuales.

Por isso, em geral, como servidores web (apache2, nginx, etc.) e outras aplicações que obtienen muitas interações geram muitos arquivos de registro, aunque o tamanho exato depende da qualidade de dados que está pegando no disco.

Instalação de Logrotate (si an no lo tiene)

De forma predeterminada, provavelmente não há necessidade de fazer nada para logrotate, você está instalado de forma predeterminada em muitas distribuições e serviços que geram uma grande quantidade de arquivos de registro (nginx, apache, etc.) para o general tienen la configuração de logrotate pré-configurado.

Puede comprobar si logrotate está instalado com:

 que logrota

O instalador do administrador de pacotes de sua distribuição não é como. Para sistemas baseados em Debian como Ubuntu, será:

 sudo apt-get install logrotate

Logrotate instalar automaticamente na configuração global predeterminada, quando você instalar o despus de instalação no servidor web, é possível que deva reinstalar o servidor web se não gerar a configuração predeterminada para este serviço.

Cmo funciona Logrotate

Se você estiver pré-configurado para serviços populares como nginx e apache2, é possível que você verifique a configuração manual ou altere a configuração predeterminada.

A configuração global de logrotate se almacena em /etc/logrotate.conf , pero escrever grande parte com os arquivos de configuração por aplicativo, almacenados em /etc/logrotate.d/ directorio. Echemos uma vista para a configuração predeterminada do nginx em /etc/logrotate.d/nginx , que podemos usar como planta para agregar novas aplicações de logrotate:

 /var/log/nginx/*.log { semanal missingok girar 52 compactar delaycompress notifempty criar 0640 www-data adm sharedscripts prerotate if [ -d /etc/logrotate.d/httpd-prerotate ]; então execute-parts /etc/logrotate.d/httpd-prerotate; fi endscript postrotate invocar-rc.d nginx girar >/dev/null 2>&1 endscript }

La primera lnea inicia el bloque y le dice a logrotate qu archivos debe buscar. O bromista *.log coincide com todos os arquivos que terminam com .log extensin no carpete de registro do nginx. Também pode especificar vários diretórios aqu para incluirlos com a configuração incorreta.

semanal rotar los registros uma vez a la semana. Se desea rotarlos segn el tamao, puede usar size 25M para rotarlos uma vez que se alcanza un cierto lmite, 25 megabytes en este ejemplo.

desaparecido evitar que logrotate genere errors se eliminar um arquivo de registro de cualquier otra cosa que no sea logrotate.

rotar por 52 mantendr 52 arquivos de registro diferentes. Neste, dado que rotar uma vez na semana, logrotate conservar un ao caso completo de arquivos de registro antes de eliminar os antigos. Podras cambiarlo a rotate 4 para manter solo un mes de archivos de registro.

comprimir comprimir os arquivos de registro antiguos para ahorrar espacio. Esto causa problemas com algumas aplicações que continuam escrevendo no arquivo de registro mientras logrotate todava está fazendo seu trabalho, por isso que você pode agregar o retraso comprimido marca para dejar um bfer de um arquivo de registro antigo antes da compressão.

notifempty es otra marca de verificação para garantir que logrotate solo se est ejecutando si se escriben nuevos archivos de registro. La crear flag crea estos nuevos archivos de registro, con permisos especficos. A sintaxe é create [mode] [owner] [group] .

Certifique-se de que coincide com o mar que está configurado nos arquivos de registro atuais, o que pode fazer com ls -la :

Tenga en cuenta que deber converter o modo para octal, luego -rw-r----- se convier em 0640 . O proprietário de nginx aqu es www-data , y el grupo es adm .

guiones compartidos especificam que o pre-rotar e post-rotar os ganchos são executados uma vez por rotação e não uma vez por arquivo de registro girado. Estes ganchos são scripts que podem ser usados ​​antes e depois da rotação. De forma predeterminada, estos ejecutarn algunos scripts para configurar nginx para alterar os arquivos de registro. Se o serviço não estiver configurado para carregar novos arquivos de registro, recomendamos que você detenha e reinicie em estes enlaces. Sin embargo, el gancho no debe interagir com el servicio; Por exemplo, você pode usar o enlace de pré-rotacin para obter uma cópia de segurança dos arquivos de registro na AWS S3 com s3cmd antes de serem eliminados.

Logrotate se encargar de la ejecucin for mismo, por lo que no tiene que se preocupar ao iniciar o serviço no início do serviço no o configurar un cron trabaja. Simplesmente ingira os arquivos de configuração para cada aplicação em /etc/logrotate.d/ e nunca se preocupa com os registros.

  • Qu son las "ballenas" en lnea?
  • Cmo usar o módulo BITS para transferir arquivos usando o PowerShell

Descobre ms contenido

Que é um amplificador integrado?

Google Pixel Watch também tem detecção de cadas, pero no hasta el prximo ao

Las melhores tazas de caf calentadas de 2022

Cmo automatize seu iPhone segn el tiempo, la actividad ou la ubicacin

"Eso debe haber sido antes de mi tiempo"

Por qu la NASA enva a Snoopy a la Luna? – Revisando geek

Deja una respuesta Cancelar la respuesta

¿Qué hace Logrotate?

Permite auto rotação, compressão, borrado e envio de arquivos de registro por correção. Además podemos manejar cada arquivo de registro de manera diaria, semanalmente, mensual ou cuando crece más de un tamaño dado. Normalmente, logrotate se ejecuta como un trabajo cron diario.

¿Cuándo se ejecuta Logrotate?

Por defeito , o Logrotate é executado uma vez na semana, e você encontra o arquivo de configuração principal /etc/ logrotate .

¿Que se encuentra no diretório etc Logrotate D?

d . / etc / logrotate . d /: Aqui você pode colocar as configurações de Logrotate para cualquier pacote que instala em seu servidor que requer ayuda para girar sus logs. Em uma instalação padrão deberías tener estos archivos aqui para sistemas básicos como apt, dpkg, rsyslog e mais.

Ir arriba