파일 크기가 특정 임계값에 도달하면 순환이 실행되지 않습니다.

파일 크기가 특정 임계값에 도달하면 순환이 실행되지 않습니다.

나는 다음과 같은 구성을 가지고 있습니다 /etc/logrotate.d/rsyslog:

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

/var/log/syslog내가 아는 바로는 크기에 도달 하면 1G자동으로 회전하도록 설정했습니다 . 또한 시스템은 7회전을 유지합니다.

테스트에서는 다음과 같이 했습니다.

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

그런 다음 나는 이렇게 했습니다.

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

파일 크기가 1.000000728 GB자체적으로 회전되어서는 안 되는 것으로 표시되고 있습니까?

구성을 적용할 때systemctl restart rsyslog

답변1

Logrotate는 K, M, G 등에 대해 SI 단위가 아닌 기존 단위를 사용합니다. 이는 말 그대로 소스 코드에서 인용한 것을 의미합니다: 1024 * 1024 * 1024또는 1073741824바이트.

관련 정보