У меня есть процесс Linux, генерирующий очень большие файлы журнала. Этот файл мог бы расти бесконечно, если бы я ничего не делал. Есть ли способ ограничить размер файла и заставить его действовать как своего рода буфер FIFO, сохраняющий только определенный объем данных?
Я также пробовал logrotate, но он не может работать, как только файл достиг заданного размера. Файлы журналов могут расти очень быстро, и я не хочу запускать logrotate каждый день.
Спасибо за вашу помощь.
Вы можете запустить run logrotate с файлом конфигурации специально для рассматриваемого файла журнала и поместить его в задание cron, которое выполняется чаще, например каждый час или каждые 15 минут.
Видеть man logrotate
.
Пытаться:
/var/log/filexxx {
rotate 5
weekly
size 100k
}
В нем всегда будет храниться 5 файлов, которые будут меняться либо еженедельно, либо по достижении размера 100 КБ (что произойдет первым).