當檔案大小達到特定閾值時不執行旋轉

當檔案大小達到特定閾值時不執行旋轉

我有以下配置/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

1024 * 1024 * 1024Logrotate 使用傳統單位而不是 SI 單位來表示 K、M、G 等。

相關內容