Wie rotiere ich alte Protokolldateien zur langfristigen Sicherung?

Wie rotiere ich alte Protokolldateien zur langfristigen Sicherung?

Ich habe Logrotate so eingerichtet, dass Protokolle 30 Tage lang archiviert werden. Wie richte ich meinen Cron-Job ein, um sie automatisch aus /var/log/netdem Langzeitspeicher, auf dem ich sie bereitgestellt habe, herauszurotieren /mnt/backup?

Ich muss den Namen beim Archivieren nicht verstümmeln.

BEARBEITEN:

Beispiel für die Benennung von Dateien... wireless.log-20120916.gz... es gibt keinen festen Protokollnamen, dessen Schlüssel verwendet werden kann (was in der ersten Antwort von Nikolaidis Fotis angenommen wird)

Antwort1

Sie könnten eine zweite Logrotate-Konfiguration erstellen und als Postskriptum etwas wie

#!/bin/bash
LogDate=$(date +"%s")
mv /var/log/messages.1 /data/logs/local_backup/var/log/messages/messages.$LogDate
gzip /data/logs/messages.$LogDate
exit

wie hierhttp://www.ashishnepal.com/logrotate-and-move-to-backup-directory/

BEARBEITEN

Neuer Ansatz ...

/bin/find $path -mtime 29 -exec cp -p {} /newPath/ \;

Sie können es entweder über einen Cron-Job oder als Post-Processing in Logrotate ausführen.

verwandte Informationen