0Pricing
Linux Server Deployment & SSH Mastery · Lección

Rotación y archivado de registros

Implemente `logrotate` para gestionar el tamaño de los archivos de registro, evitar el agotamiento del disco y garantizar políticas eficientes de archivado de registros.

Rotación y archivado de registros es una lección gratuita de Linux Server Deployment & SSH Mastery en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Linux Server Deployment & SSH Mastery, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.

Por qué es importante la rotación de registros

Los registros del servidor son esenciales para la depuración y la supervisión, pero pueden crecer mucho con el tiempo. Si no se controlan, pueden llenar rápidamente el espacio del disco, lo que puede provocar inestabilidad del servidor o incluso bloqueos.

Aquí es donde entra en juego la rotación de registros. Es un proceso fundamental para gestionar eficazmente el tamaño de los archivos de registro.

Introducción a la utilidad `logrotate`

Los sistemas Linux utilizan una utilidad llamada logrotate para automatizar la gestión de los archivos de registro. Está diseñada para:

  • Rotar los registros (cambiar el nombre de los antiguos)
  • Comprimir los registros antiguos para ahorrar espacio
  • Eliminar los archivos de registro muy antiguos
  • Ejecutar scripts personalizados después de la rotación

La mayoría de las distribuciones de Linux incluyen logrotate preinstalado y configurado para ejecutarse diariamente mediante un trabajo de cron.

Cómo `logrotate` encuentra las instrucciones

logrotate lee su configuración de archivos específicos. Hay dos ubicaciones principales:

  • /etc/logrotate.conf: el archivo de configuración principal, que suele contener ajustes globales y valores predeterminados.
  • /etc/logrotate.d/: un directorio donde las aplicaciones y los servicios individuales colocan sus propias reglas específicas de rotación de registros. Cada archivo de este directorio se trata como una configuración independiente.

Este enfoque modular facilita la gestión de las reglas de distintos servicios.

Definir la frecuencia de rotación de los registros

Una de las primeras cosas que debe definir es la frecuencia con la que se rotarán los registros. logrotate ofrece varias directivas para ello:

  • daily: rota los registros todos los días.
  • weekly: rota los registros una vez por semana.
  • monthly: rota los registros una vez al mes.
  • yearly: rota los registros una vez al año.

Elija una frecuencia que equilibre la conservación de los detalles de los registros con el uso del espacio en disco.

Conservar una cantidad de registros antiguos

La directiva rotate indica a logrotate cuántos archivos de registro antiguos debe conservar antes de eliminar los más antiguos. Por ejemplo, rotate 4 significa que conservará el archivo de registro actual, además de cuatro versiones rotadas (archivadas).

Una vez alcanzado el límite, el registro rotado más antiguo se elimina cuando se realiza una nueva rotación.

Comprimir archivos de registro antiguos

Para ahorrar aún más espacio en disco, logrotate puede comprimir los archivos de registro antiguos. La directiva compress hace exactamente esto, normalmente mediante gzip.

Cuando esta opción está habilitada, los registros rotados aparecerán como archivos .gz (por ejemplo, myapp.log.1.gz). Es muy recomendable para la mayoría de los registros del servidor.

Rotar por tamaño, no solo por tiempo

A veces, los registros pueden crecer muy rápido, y esperar a una rotación diaria o semanal no es suficiente. La directiva size permite rotar los registros cuando superan un tamaño de archivo determinado, independientemente de la frecuencia temporal.

  • size 100k: Rotar si el archivo de registro supera los 100 kilobytes.
  • size 10M: Rotar si el archivo de registro supera los 10 megabytes.
  • size 1G: Rotar si el archivo de registro supera 1 gigabyte.

Si se especifican tanto una frecuencia temporal (por ejemplo, daily) como size, la rotación se produce cuando se cumple cualquiera de las dos condiciones.

Ejemplo de configuración de `logrotate`

Este es un ejemplo sencillo de un archivo de configuración que podría encontrar en /etc/logrotate.d/ para el archivo de registro de una aplicación hipotética:

Esta configuración rotará el registro diariamente, conservará 7 copias antiguas y las comprimirá.

/var/log/my_app/access.log {
    daily
    rotate 7
    compress
    notifempty
    missingok
}

Ejecutar `logrotate` manualmente

Aunque logrotate suele ejecutarse automáticamente mediante cron, puede probar o forzar una rotación manualmente. El comando principal es logrotate /etc/logrotate.conf.

Para forzar una rotación (algo útil para probar sus configuraciones), use la opción -f:

  • logrotate -f /etc/logrotate.d/my_app: Fuerza la rotación para un archivo de configuración específico.
  • logrotate -f /etc/logrotate.conf: Fuerza la rotación para todos los registros configurados.

Use la opción -d (depuración) para ver qué haría el comando sin rotar nada realmente.

Comprobación rápida: retención de registros

Considere la siguiente configuración de logrotate para /var/log/webserver/error.log:

/var/log/webserver/error.log { weekly rotate 4 compress notifempty }

Si esta configuración lleva varias semanas en funcionamiento, ¿cuántos archivos de registro históricos *comprimidos* esperaría encontrar en un momento dado?

Resumen: dominar la gestión de registros

En esta lección, hemos explorado cómo gestionar eficazmente los registros del servidor mediante logrotate. Hemos aprendido que:

  • La rotación de registros evita que se agote el espacio en disco.
  • logrotate utiliza archivos de configuración en /etc/logrotate.conf y /etc/logrotate.d/.
  • Entre las directivas principales se incluyen daily/weekly/monthly para la frecuencia, rotate para la retención, compress para ahorrar espacio y size para la rotación condicional.

Una gestión adecuada de los registros es fundamental para mantener la estabilidad de las operaciones del servidor.

Preguntas frecuentes

¿La lección «Rotación y archivado de registros» es gratis?

Sí — el texto completo de «Rotación y archivado de registros» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Linux Server Deployment & SSH Mastery, actualiza a CoddyKit PRO. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.

¿Qué aprenderé en «Rotación y archivado de registros»?

Implemente `logrotate` para gestionar el tamaño de los archivos de registro, evitar el agotamiento del disco y garantizar políticas eficientes de archivado de registros. Practicas Linux Server Deployment & SSH Mastery con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Linux Server Deployment & SSH Mastery?

No se requiere experiencia previa. Linux Server Deployment & SSH Mastery en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Rotación y archivado de registros»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Linux Server Deployment & SSH Mastery?

Sí. Cada lección de Linux Server Deployment & SSH Mastery incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Herramientas de monitorización del sistema
  2. Comprender los registros del sistema
  3. Rotación y archivado de registros
  4. Supervisión y alertas centralizadas
← Volver a Linux Server Deployment & SSH Mastery