2010-12-21 6 views

Antwort

2

Nun, Sie delaycompress können einen weiteren Zyklus zu warten. Grundsätzlich, wenn Sie täglich rotieren, wird es die Protokolle von Gestern unkomprimiert halten.

Außerdem kann man versuchen, nicht logrotate mit den Dateien zu komprimieren und einen Bash-Skript schreiben, wie einmal pro Tag laufen und alle Dateien, die älter als ein bestimmtes Datum komprimieren. Hier

ist ein Tutorial bash, dass ich persönlich mag: http://www.linuxconfig.org/Bash_scripting_Tutorial

6

Eine Option könnte sein logrotate zu verwenden, um eine andere Erweiterung zu drehen, dann logrotate verwenden in komprimierte Dateien zu drehen:

/var/log/raw.log { 
    daily 
    nocompress 
    extension .old 
    } 

/var/log/*.old { 
    daily 
    compress 
    delaycompress 
    rotate 10 
    } 

Diese Rube Goldberg-Vorrichtung wird zu folgendem führen:

raw.log 
raw.log.old 
raw.log.old.1 
raw.log.old.2.gz 
raw.log.old.3.gz 

So haben Sie zwei archivierte Tage von Protokollen, die nicht komprimiert sind.

-1

Können Sie so etwas wie die folgenden?

/var/log/access.log { 
    daily 
    nocompress 
} 

/var/log/access.7.log { 
    daily 
    compress 
} 

denke ich, dass Sie so etwas wie

access.log 
access.1.log 
access.2.log 
access.3.log  
access.4.log 
access.5.log 
access.6.log 
access.7.log.gz 
access.8.log.gz 
access.log 
+0

Haben Sie es selbst geben testen? Wenn ja, wäre diese Antwort gut. – nalply

+0

Irgendein Urteil? Das sieht fantastisch aus – Kevin

+0

Das funktioniert nicht, da die Dekomprimierungsprotokolle nicht entfernt werden. Eine komprimierte Version wurde gerade hinzugefügt. –

Verwandte Themen