logrotate - 备份任何文件

时间:2016-01-14 08:23:39

标签: linux server logrotate

我有一个文件。它不是日志文件。我每天都需要将其复制到其他位置,并在其名称中添加时间戳。我需要保留最后十(10)天的副本。 我正在考虑使用logrotate服务(服务器正在运行CentOS)。

我的问题是,如果logrotate有一些限制只能旋转日志文件,或者我可以使用任何其他文件和位置。那我可以指定一些其他位置放置带有时间戳的副本并仅保留最后10(天)副本吗?

提前感谢您的提示。

1 个答案:

答案 0 :(得分:2)

您可以在任何位置轮播任何文件,例如看一下旋转/etc/logrotate.d/samba的{​​{1}}(如果已安装)。只需在log.smbd中创建一个新文件,然后配置您的文件即可旋转。一个很好的描述是here,因为centOS没有区别(here)。

问题是名称中的时间戳。如果你想要它,它不再是旋转。使用/etc/logrotate.d/时,最新的归档文件始终为1,因此所有较旧的归档文件都会重命名。但是他们保持在文件系统中存储的最后修改时间不变。但这次不是名字。

作为替代方法,您可以通过在logrotate目录之一中添加文件来创建新的cron作业。此cron作业可以移动您添加时间戳的文件,例如使用\etc\cron.*\并使用date +%y%m%d_%H:%M创建新文件。无需touch