Ohne Hacking geht es nicht logrotate
.
Sie können jedoch mit einem Symlink und Cron "cheaten" und denselben Effekt erzielen . In Ihrem logrotate.conf
Satz olddir
auf /home/mhd-01/logs/olddir/
und ein tägliches Cronjobs erstellen, das tut:
mkdir /home/mhd-01/logs/archive/$(date "+%y%m%d") ln -sf /home/mhd-01/logs/archive/$(date "+%y%m%d") /home/mhd-01/logs/olddir/
Stellen Sie sicher, dass dieser neue Cronjob vor dem Logrotate-Job ausgeführt wird - entweder stecken Sie ihn /etc/cron.daily/
mit einer Nummer in die Front (zB 01_linkrotate
) oder setzen Sie ihn auf Mitternacht (00:00)
Eine gröbere Variante dieser Lösung ohne Symlinks würde cron
den Inhalt des olddir
Archivs in das Archiv verschieben. Der Cronjob, der der Logrotate oder am Ende des Tages (23:59) hinterher läuft, würde Folgendes tun:
mkdir /home/mhd-01/logs/archive/$(date "+%y%m%d") mv /home/mhd-01/logs/olddir/* /home/mhd-01/logs/archive/$(date "+%y%m%d")/