![Die Rotation wird nicht ausgeführt, wenn die Dateigröße einen bestimmten Schwellenwert erreicht](https://rvso.com/image/768934/Die%20Rotation%20wird%20nicht%20ausgef%C3%BChrt%2C%20wenn%20die%20Dateigr%C3%B6%C3%9Fe%20einen%20bestimmten%20Schwellenwert%20erreicht.png)
Ich habe folgende Konfigurationen drin /etc/logrotate.d/rsyslog
:
/var/log/syslog
{
rotate 7
size 1G
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog rotate >/dev/null
endscript
}
So wie ich es verstehe, habe ich es so eingerichtet, dass es sich selbst dreht, wenn es die gewünschte Größe /var/log/syslog
erreicht 1G
. Außerdem hält das System 7 Rotationen durch.
Beim Testen habe ich Folgendes gemacht:
cat /dev/null > /var/log/syslog
base64 /dev/urandom | head -c 999999999 > /var/log/syslog
logger -s "hello"
Dann habe ich Folgendes gemacht:
ls -las /var/log/syslog*
976568 -rw-r----- 1 syslog adm 1000000072 Jul 28 19:11 /var/log/syslog
Es wird die Dateigröße angezeigt, denn 1.000000728 GB
hätte es sich nicht selbst drehen sollen?
Beim Anwenden der Konfigurationen habe ichsystemctl restart rsyslog
Antwort1
Logrotate verwendet für K, M, G usw. traditionelle Einheiten statt SI-Einheiten. Wörtlich bedeutet dies, um aus dem Quellcode zu zitieren: 1024 * 1024 * 1024
oder 1073741824 Bytes.