![當檔案大小達到特定閾值時不執行旋轉](https://rvso.com/image/768934/%E7%95%B6%E6%AA%94%E6%A1%88%E5%A4%A7%E5%B0%8F%E9%81%94%E5%88%B0%E7%89%B9%E5%AE%9A%E9%96%BE%E5%80%BC%E6%99%82%E4%B8%8D%E5%9F%B7%E8%A1%8C%E6%97%8B%E8%BD%89.png)
我有以下配置/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 * 1024
Logrotate 使用傳統單位而不是 SI 單位來表示 K、M、G 等。