# logrotate

> Qué hace logrotate, cómo funciona su configuración en /etc/logrotate.conf y /etc/logrotate.d, y cómo probar una regla de forma segura.

logrotate es una utilidad de Linux que rota, comprime y elimina archivos de registro para evitar que llenen el disco. Por lo general, se ejecuta una vez al día mediante un temporizador de systemd o una tarea de cron, y lee /etc/logrotate.conf junto con las reglas por paquete en /etc/logrotate.d/.

## Una regla típica

Una regla nombra uno o más archivos de registro y directivas como daily o weekly (la frecuencia), rotate 7 (cuántos archivos antiguos conservar), compress (comprimir archivos antiguos con gzip), missingok (sin error si el archivo no está presente), notifempty (omitir registros vacíos) y postrotate ... endscript (un comando que se ejecuta después de la rotación, por ejemplo, para reabrir el registro).

## copytruncate

Algunos programas continúan escribiendo en el mismo archivo abierto. copytruncate copia el registro y luego trunca el original en lugar de moverlo, por lo que el programa mantiene su descriptor de archivo; es posible que se pierdan algunas líneas escritas durante la copia.

## Pruebas

'logrotate -d /etc/logrotate.conf' se ejecuta en modo de depuración y solo imprime lo que sucedería. '-f' fuerza una rotación incluso si no corresponde.

## Cómo agregar y probar una regla

1. Cree /etc/logrotate.d/myapp con la ruta del registro y las directivas, por ejemplo, weekly, rotate 4, compress, missingok, notifempty.
2. Simulación: sudo logrotate -d /etc/logrotate.d/myapp
3. Si la salida se ve correcta, fuerce una rotación: sudo logrotate -f /etc/logrotate.d/myapp
4. Compruebe el resultado: ls -l del directorio de registros.

## Precauciones

- Un patrón de ruta incorrecto puede rotar o eliminar registros de otros programas.
- Los registros administrados por el diario de systemd se limitan en journald.conf, no mediante logrotate.

## Fuentes

- [logrotate(8)](https://man7.org/linux/man-pages/man8/logrotate.8.html)
- [logrotate(8) (Debian)](https://manpages.debian.org/bookworm/logrotate/logrotate.8.en.html)

Última actualización: 2026-10-08
URL: https://raincleaner.eu/es/wiki/linux/logrotate
