GNU/Linux >> Tutoriales Linux >  >> Linux

Administrar registros con Logrotate en Ubuntu

El rendimiento de un entorno informático o de servidor depende en gran medida de la memoria del sistema y del uso del disco. Si algo consume más espacio en disco, provocará un error del sistema. Asimismo, se debe controlar el aumento del tamaño del archivo de registro para reducir dicho riesgo.

Logrotate se introdujo como una utilidad del sistema que gira, comprime los archivos de registro y envía registros del sistema por correo. Esta gestión de archivos de registro reduce el uso de espacio en disco y evita errores del sistema.

En este artículo, vamos a discutir el proceso de instalación y la configuración de logrotate en el servidor Ubuntu 20.04 LTS.

Instalación de Logrotate en servidor Ubuntu 20.04

En Ubuntu, logrotate está instalado de forma predeterminada, pero en caso de que no esté instalado, puede instalarlo con el comando como se muestra a continuación.

$ sudo apt update 
$ sudo apt install logrotate

Puede confirmar la instalación con el comando como se muestra a continuación.

$ logrotate --version

Los archivos de configuración de Logrotate

El archivo de configuración para logrotate es creado por el demonio logrotate. Hay dos rutas para dicha configuración, como se muestra a continuación.

/etc/logrotate.conf

Es el archivo de configuración generalmente creado para la utilidad logrotate

/etc/logrotate.d/

Es el directorio formado por el giro específico de las aplicaciones. De forma predeterminada, se usa /etc/logrotate.conf, pero para que cada aplicación tenga una configuración diferente, se puede establecer en /etc/logrotate.d/.

El archivo de configuración Logrotate predeterminado

Como usted sabe que /etc/logrotate.conf es el archivo de configuración predeterminado. Revisemos el archivo de configuración como se muestra en la captura de pantalla a continuación.

Verifique el archivo de configuración con el comando como se muestra a continuación.

$ cat /etc/logrotate.conf

Salida:

Configuración para una aplicación específica

En la captura de pantalla anterior, hay una configuración como include /etc/logrotate.d lo que significa que la configuración para aplicaciones específicas se puede establecer en este directorio. Aquí, vamos a mostrar la configuración de dpkg como se muestra a continuación.

$ cd /etc/logrotate.d/
$ cat dpkg

Para obtener detalles de cada línea de configuración, verifique los puntos discutidos a continuación. Estas configuraciones reemplazarán la configuración predeterminada de /etc/logrotate.conf para aplicaciones específicas como dpkg.

  • mensual:rotar una vez al mes. Puede reemplazarlo con diario, semanalmente según sus requisitos.
  • rotar 12:se conservarán doce archivos de registro antiguos. Reemplaza el 4 predeterminado en /etc/logrotate.conf
  • comprimir:los archivos de registro de esta aplicación se comprimirán con gzip
  • delaycompress:la compresión del archivo de registro anterior al siguiente ciclo de rotación se pospone ya que todavía lo utiliza algún programa.
  • missingok:no escriba ningún mensaje de error si falta el archivo de registro
  • notifempty:no rotar el archivo de registro si está vacío
  • crear raíz raíz 644:el archivo de registro se crea con el permiso 644, con el usuario y el grupo como raíz

Creación del archivo de configuración de Logrotate

Supongamos que ha instalado una aplicación como nginx y su archivo de registro se crea en /var/log/nginx/ luego puede configurar un archivo de configuración logrotate para esta aplicación específica con el comando como se muestra a continuación.

Navegue al directorio logrotate

$ cd /etc/logorate.d/

Crea un archivo logrotate con el editor

$ vim nginx

/var/log/nginx/*.log {
   daily
   missingok
   rotate 14
   compress
   delaycompress
   notifempty
   create 0640 www-data adm
   sharedscripts
   prerotate
   if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
      run-parts /etc/logrotate.d/httpd-prerotate; \
   fi \
   endscript
   postrotate
   invoke-rc.d nginx rotate >/dev/null 2>&1
   endscript
}

En la configuración anterior, hemos configurado la rotación para 14, por lo que se conservarán 14 archivos de registro antiguos, y el archivo de registro se comprime con el uso de gzip. Otra configuración utilizada en el archivo anterior casi se explica en la sección del archivo de configuración logrotate. Puede ejecutar la configuración recién creada con el privilegio de usuario sudo como se muestra a continuación.

$ sudo logrotate -d /etc/logrotate.d/nginx

Aquí, los archivos de registro se ejecutan como se muestra en la siguiente captura de pantalla.

Logrotar con cron

Al instalar el paquete logrotate, también se crea un archivo crontab en el proceso dentro de /etc/cron.daily con el nombre logrotate. Consulte la captura de pantalla que se muestra a continuación para obtener más detalles.

$ cat /etc/cron.daily/logrotate

Conclusión

En este artículo, aprendió cómo instalar el paquete logrotate y verificar el archivo de configuración de la aplicación específica y predeterminada para logrotate con la implementación de crontab. ¡Gracias!


Linux
  1. Administrar una instalación de VirtualBox sin cabeza con phpvirtualbox (Ubuntu 16.04 LTS)

  2. Cómo instalar el archivo deb en Ubuntu (con ejemplos)

  3. Entendiendo la utilidad logrotate

  4. logrotate no puede rotar registros, obteniendo No such file error

  5. Supervise continuamente los troncos con cola que ocasionalmente se giran

Cómo manejar archivos con Scilab en Ubuntu 15.04

Cómo configurar la red con Netplan en Ubuntu

HowTo:El último tutorial del comando Logrotate con 10 ejemplos

Programación de prólogo en Ubuntu

Ubuntu:monta el archivo de imagen con permiso r/w

Logrotate no elimina los registros antiguos