创建 30 天后自动删除日志文件

创建 30 天后自动删除日志文件

我是 Linux 新手,想知道是否有人可以帮助我。我有一个 RADIUS 服务器,在 /var/log/freeradius/radacct 文件夹中有多个目录。在 radacct 之后的每个目录中,都有以日期详细信息开头的日志文件,然后是它们的创建日期(例如详细信息-20210515)

我试图在创建 30 天后删除这些文件。我知道 cronjob 可以做到这一点,但我是 Linux 新手,只需要一些帮助。

答案1

我在 /var/log/radius/radius.log 的 logrotate 的 postrotate 中添加了查找删除

原因是,除了压缩之外,每天标记日期的帐户文件不会由 logrotate 处理,因为您永远不会获得具有相同日期的新文件进行轮换,因此不会被清理。这示例配置我已经研究过称之为第二种技术并指出:

如果您采用第二种技术,您将需要另一个 cron 作业来删除旧的详细信息文件。

对于你的情况,我会选择类似的东西:

find /var/log/freeradius/radacct -maxdepth 2 -mtime +30 -name "detail-*" -delete &>/dev/null

相关内容