
La información de registro es una parte muy importante de cualquier sistema operativo y se utiliza para diagnosticar problemas con cualquier aplicación en ejecución. Las entradas de registro ayudan a encontrar soluciones a los problemas. La mayoría de las aplicaciones del sistema operativo Linux generan registros y los administradores del sistema obtienen la información que necesitan sobre las aplicaciones a partir de las entradas del registro. Sin embargo, las entradas del registro a veces pueden causar problemas porque el tamaño de las entradas puede aumentar con el tiempo. Por lo tanto, es necesario gestionar las entradas del registro.
logrotate es una herramienta de línea de comandos de Linux para administrar entradas de registro. Esta herramienta ayuda a los administradores a realizar diferentes tipos de tareas en las entradas de registro, como limitar los archivos de registro de rotación, comprimir archivos de registro de rotación, eliminar archivos de registro innecesarios, ejecutar scripts de shell específicos basados en archivos de registro, etc. Funciones del comando «logrorate» que administran los archivos de registro de diferentes maneras.
Comprobar la versión instalada de Logrotate
El comando «logrotate» está instalado por defecto en la nueva versión del sistema operativo Ubuntu. Ejecute el siguiente comando para verificar la versión instalada del comando «logrotate»:
Las entradas de registro para diferentes aplicaciones se almacenan en la carpeta «/var/log» de forma predeterminada. Si examina el contenido de esta carpeta, aparecerá algo similar a lo siguiente.
Establecer la configuración «Logrotar»
valor ajustado | Objetivo |
Diario/Semanal/Mensual/Anual | Define la duración de los troncos giratorios. |
número de giros | Define la cantidad de archivos que se conservarán antes de que se eliminen los archivos de registro antiguos. |
compresión | Se utiliza para comprimir archivos de registro. |
Comando de compresión | Se utiliza para configurar el comando «compresión». gzip es la directiva predeterminada. |
Comando descomprimir | Se utiliza para configurar el comando «descomprimir». gunzip es el comando predeterminado. |
compresión retardada | Se utiliza para retrasar el proceso de compresión de archivos de registro. |
Notificación vacía | Se utiliza para no rotar archivos vacíos. |
Misok | Si se establece, no se generará ningún error por los archivos de registro faltantes. |
tamaño | Se utiliza para establecer el límite para comenzar a rotar archivos de registro. |
texto de fecha | Se utiliza para agregar valor de fecha como sufijo a archivos rotados. |
truncamiento de copia | Se utiliza para crear una copia del archivo original. |
pre-rotación | Se utiliza para ejecutar un script antes de rotar los archivos de registro. |
giro hacia atrás | Se utiliza para ejecutar scripts después de rotar archivos de registro. |
crear | Se utiliza para crear archivos de registro con privilegios de root. |
sintaxis:
La sintaxis del comando «logrotate» es la siguiente:
Rotación logarítmica [OPTION] Ruta del perfil
La directiva «logrotate» puede utilizar diferentes tipos de opciones para diferentes propósitos.
Opciones de rotación de registros
Algunas opciones útiles del comando “logrotate” se mencionan a continuación:
Opciones | Objetivo |
---|---|
-f, -fuerza | Para obtener efectos potentes cuando sea necesario. |
-d, –depurar | Se utiliza para habilitar el modo de depuración durante la rotación. |
-m, -correo | Se utiliza para enviar correos electrónicos durante la rotación. |
-s, – estado | Se utiliza en lugar del archivo de estado. |
-uso | Se utiliza para imprimir información de uso. |
-? | Se utiliza para imprimir mensajes de ayuda. |
-v, –detallado | Se utiliza para imprimir en modo detallado. |
Perfil de rotación de registros
El archivo de configuración principal de logrotate se encuentra en «/etc/logrotate.conf». Ejecute el siguiente comando para abrir el archivo en el nano editor:
$ nanómetro /ETC/logrotate.conf
La configuración predeterminada para el comando «logrotate» se muestra en el archivo «logrotate.conf». La directiva «include» se utiliza en el archivo para recuperar la configuración ubicada en el directorio «/etc/logrotate.d».
Ejemplo 1: crear un archivo de configuración de Logrotate simple
Cree un archivo de registro de muestra denominado «/var/log/test.log» utilizando los datos de registro de muestra. Ejecute el siguiente comando para abrir el editor Nano y crear un nuevo archivo «logrotate.conf» en la carpeta «/etc/tmp». Si la carpeta «/tmp» no se ha creado antes, utilice permisos de root para crear la carpeta.
$ nanómetro /ETC/tmp/logrotate.conf
Agregue el siguiente contenido al archivo «/var/log/test.log». Según la configuración, si el tamaño del archivo supera los 5K, el archivo «test.log» se rotará todos los días:
A diario
tamaño 5K
Su administrador raíz
}
Ejecute el siguiente comando para ver el tamaño del archivo de registro:
$ LS -l /variable/registro/Registro de prueba
Después de crear el perfil, ejecute el comando «logrotate».
$ sudo Rotación logarítmica /ETC/tmp/logrotate.conf
Después de ejecutar el comando «logrotate», ejecute el siguiente comando nuevamente para verificar el tamaño del archivo de registro:
$ LS -l /variable/registro/Registro de prueba
El tamaño del archivo «test.log» es 1K+. Por lo tanto, no se realiza la rotación basada en los ajustes de configuración.
Cambie el valor de tamaño en el archivo «/etc/tmp/logrotate.conf» a 1K y ejecute el comando «ls» nuevamente para verificar el tamaño del archivo «/var/log/test.log». Según el resultado, el archivo de registro se rotó y eliminó debido a que se excedió el límite de tamaño.
Ejemplo 2: uso de Logrotate Copytruncate
Cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración para mostrar el uso de copytruncate. Según la nueva configuración, logrotate crea una copia del archivo original reduciendo el tamaño del archivo original a cero.
girar 5
tamaño 1k
truncamiento de copia
Su administrador raíz
}
Ejecute el siguiente comando para verificar el tamaño del archivo «test.log»:
$ LS -l /variable/registro/Registro de prueba
Después de crear el perfil, ejecute el comando «logrotate».
$ sudo Rotación logarítmica /ETC/tmp/logrotate.conf
Después de ejecutar el comando «logrotate», ejecute el siguiente comando nuevamente para verificar el tamaño del archivo «test.log»:
$ LS -l /variable/registro/Registro de prueba
Después de ejecutar el comando «logrotate» establecido por copytruncate, el tamaño del archivo original pasa a ser 0.
Ejemplo 3: uso de la compresión Logrotate
Cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración para mostrar el uso de la compresión. Según la nueva configuración, logrotate crea un archivo comprimido del archivo original.
girar 5
tamaño 1k
compresión
crear Capítulo 770 administrador raíz
}
Ejecute el siguiente comando para ver la lista de archivos y carpetas en «/var/log»:
Después de crear el perfil, ejecute el comando «logrotate».
$ sudo Rotación logarítmica /ETC/tmp/logrotate.conf
Ejecute el siguiente comando nuevamente para ver la lista de archivos y carpetas en «/var/log»:
Se creará un archivo comprimido del archivo «test.log» llamado «test.log.1.gz» y se eliminará el archivo original.
Ejemplo 4: uso de Logrotate Dateext
Cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración para mostrar el uso de dateext. Según la nueva configuración, logrotate crea un archivo comprimido del archivo original utilizando los valores de fecha.
Su administrador raíz
girar 5
tamaño 1k
compresión
crear Capítulo 770 administrador raíz
texto de fecha
}
Después de crear el perfil, ejecute el comando «logrotate».
$ sudo Rotación logarítmica /ETC/tmp/logrotate.conf
Ejecute el siguiente comando para ver la lista de archivos y carpetas en «/var/log»:
Se creará un archivo comprimido del archivo «test.log» llamado «test.log.20240129.gz» y se eliminará el archivo original.
Ejemplo 5: Uso de Logrotate Maxage
Cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración para mostrar el uso de maxage. Dependiendo de la configuración, logrotate retendrá 5 entradas de registro si el tamaño del archivo de registro supera 1K después de un día.
Su administrador raíz
girar 5
tamaño 1k
compresión
edad máxima 1
}
Ejecute el siguiente comando «logrotate» para almacenar el resultado en otro archivo de registro llamado «out.log»:
$ sudo Rotación logarítmica -s=/variable/registro/Registro de salida /ETC/tmp/logrotate.conf
Según el siguiente resultado, el archivo «out.log» se creará después de ejecutar el comando «logrotate»:
Ejemplo 6: Uso de Logrotate Missingok
Cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración. Aquí, el archivo de registro «testfile.log» no existe en la carpeta «/var/log».
Su administrador raíz
girar 5
tamaño 1k
compresión
}
Se imprimirá un mensaje de error después de ejecutar el comando «logrotate».
Agregue la configuración «missingok» en el archivo de configuración de logrotate y ejecute el comando «logrotate» nuevamente. No se imprimirán errores por archivos de registro faltantes.
Ejemplo 7: Uso de Logrotate Prerotate
Utilice el siguiente script para crear un archivo Bash llamado «test.sh» para imprimir un mensaje simple. Este archivo se utiliza en este ejemplo de logrotate para mostrar el uso de prerotate en el archivo de configuración de logrotate.
#!/bin/bash
eco «Ejemplo de rotación logarítmica…»
Después de crear el archivo, ejecute el siguiente comando para establecer los permisos de ejecución del archivo para todos los usuarios:
$ chmod a+x /Hogar/fahmida/archivo de prueba
Ahora, cree o modifique el archivo «/etc/tmp/logrotate.conf» con la siguiente configuración. Dependiendo de la configuración, logrotate retendrá 5 entradas de registro si el tamaño del archivo de registro excede 1K y el archivo «test.sh» se ejecuta antes de la rotación.
Su administrador raíz
girar 5
tamaño 1k
pre-rotación
/Hogar/fahmida/archivo de prueba
borrador final
}
Muestre el resultado del archivo «test.sh» después de ejecutar el comando «logrotate»:
en conclusión
Este tutorial muestra varios usos del comando «logrotate» a través de múltiples ejemplos, lo que ayudará a los usuarios de Linux a comprender el uso del comando y administrar correctamente los archivos de registro.