logrotate

Das Verzeichnis /var/log füllt sich mit Logdateien. Wenn ein Logverzeichnis als Ramdisk angebunden ist, fehlt häufig der Platz und das Dateisystem läuft voll. Hier kann der logrotate helfen: Er komprimiert die Dateien regelmäßig und legt sie zur Seite. Ältere Logs werden automatisch gelöscht. Die zentrale Konfigurationsdatei /etc/logrotate.conf könnte wie folgt geändert werden, damit die Logfiles möglichst start komprimiert und nicht allzu lange vorgehalten werden.

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 2 weeks worth of backlogs - default 4
rotate 2

# Archive log files by adding a YYYYMMDD instead of simply adding a number.
dateext

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
compress

# use bzip2 whith higher compression than gzip
compresscmd /bin/bzip2
uncompresscmd /bin/bunzip2
compressoptions -9
compressext .bz2

# packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
    missingok
    monthly
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    rotate 1
}

# system-specific logs may be configured here

Nun gilt es noch, die einzelnen Logfiles durch Dateien im Verzeichnis /etc/logrotate.d/ zu beschreiben. Im Folgenden einige Beispiele, mit denen ich meine Logverzeichnisse von Ballast befreie:

fhem:

/opt/fhem/log/*.log {
  daily
  rotate 14
  compress
  copytruncate
  create 644 fhem dialout
  missingok
}

hmland:

/var/log/hmland.log {
     rotate 7
     daily
     compress
     missingok
     postrotate
         /etc/init.d/hmland restart
     endscript
}

snapper:

/var/log/snapper.log {
    compress
    dateext
    notifempty
    missingok
    nocreate

    maxage 60
    rotate 9
    size 1M
}

umtskeeper:

/var/log/umtskeeper.log {
    compress
    dateext
    notifempty
    missingok
    nocreate

    maxage 60
    rotate 9
    size 1M
}

mpd:

/var/log/mpd/*.log {
        weekly
        missingok
        rotate 7
        compress
        notifempty
        copytruncate
        create 600
}

Previous page: Lebensdauer der SD-Karten Next page: compress