我已经设置了 logrotate 来存档 30 天的日志;我该如何设置我的 cron 作业来自动将它们从/var/log/net
我所安装的长期存储中轮换出来/mnt/backup
?
当我存档它们时,我不需要弄乱名称。
编辑:
文件命名的示例......wireless.log-20120916.gz
没有固定的日志名称作为键(这是 Nikolaidis Fotis 第一个答案中的假设)
答案1
您可以创建第二个 logrotate 配置并使用类似以下脚本
#!/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
像这儿http://www.ashishnepal.com/logrotate-and-move-to-backup-directory/
编辑
新的方法 ...
/bin/find $path -mtime 29 -exec cp -p {} /newPath/ \;
您可以从 cron 作业中执行它,也可以在 logrotate 中执行后续处理