如何限制 Linux 服务创建的日志文件大小

Ale*_*oca 2 linux logs

Linux 服务正在创建一个巨大的日志文件。

目前我正在使用 cron 控制它(每 X 分钟我将它减少到最后 X 行):

*/5 * * * * root  echo "$(tail -n 1000 /var/log/XXX/logger_file.log)" > /var/log/XXX/logger_file.log
Run Code Online (Sandbox Code Playgroud)

有没有其他方法可以以更清洁的方式完成这项工作?

如果字符剪切是基于大小的(即保留最后 1024 个字节),则剪切后的第一行甚至可能会损坏。

当然,我不能修改服务本身以保持安静。

小智 5

你试过 logrotate 吗? man logrotate

这是一个可以提供帮助的指南。如何使用 logrotate 管理日志文件