나는 다음과 같은 구성을 가지고 있습니다 /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바이트.