La rotación no se ejecuta cuando el tamaño del archivo alcanza cierto umbral

La rotación no se ejecuta cuando el tamaño del archivo alcanza cierto umbral

Tengo las siguientes configuraciones en /etc/logrotate.d/rsyslog:

/var/log/syslog
{
        rotate 7
        size 1G
        missingok
        notifempty
        delaycompress
        compress
        postrotate
          invoke-rc.d rsyslog rotate >/dev/null
        endscript
}

Por lo que tengo entendido, lo configuré para que, si /var/log/syslogalcanza 1Gsu tamaño, gire solo. Además, el sistema realizará 7 rotaciones.

En las pruebas, hice esto:

cat /dev/null > /var/log/syslog
base64 /dev/urandom | head -c 999999999 > /var/log/syslog
logger -s "hello"

Entonces hice esto:

ls -las /var/log/syslog*
976568 -rw-r----- 1 syslog adm 1000000072 Jul 28 19:11 /var/log/syslog

Muestra el tamaño del archivo, ¿ 1.000000728 GBno debería haberse girado solo?

Al aplicar las configuraciones, hicesystemctl restart rsyslog

Respuesta1

Logrotate utiliza unidades tradicionales en lugar de unidades SI para K, M, G, etc. Esto significa literalmente, citando el código fuente: 1024 * 1024 * 1024o 1073741824 bytes.

información relacionada