我有一个 Linux 进程生成非常大的日志文件。如果我不做任何事情,这些文件可能会无限增长。有没有办法限制文件的大小,并使其像某种 fifo 缓冲区一样只保留一定量的数据?
我也尝试过 logrotate,但一旦文件达到给定大小,它就无法运行。日志文件的增长速度非常快,我不想每天都运行 logrotate。
感谢您的帮助。
答案1
您可以使用专门针对相关日志文件的配置文件运行 logrotate,并将其放入更频繁运行的 cron 作业中,例如每小时或每 15 分钟运行一次。
看man logrotate
。
答案2
尝试:
/var/log/filexxx {
rotate 5
weekly
size 100k
}
这将始终保留 5 个文件,每周轮换一次或当其大小达到 100k 时轮换(先发生的情况)。