logrotate не работает

Я бы попробовал что-то вроде:

awk -v pattern="Testing:" '$0 ~ pattern { sub(pattern, "  *"); print }' 

Это должно сработать с любой версией sed , поскольку он не содержит очевидных расширений. Нет необходимости явно обрабатывать символы новой строки, если вы позаботитесь о правильном заключении переменных в кавычки, чтобы предотвратить разделение слов.

3
23.12.2015, 18:48
1 ответ

Есть еще один вопрос, который ссылается на этот как заявленный дубликат, но на самом деле имеет совсем другой ответ.

Ответы на этот вопрос будут работать только в том случае, если Tomcat запускается от имени пользователя «root», что является плохой практикой безопасности. Если Tomcat запускается, в соответствии с рекомендациями, от имени пользователя tomcat :tomcat, файл catalina.out также будет принадлежать tomcat :tomcat. В этом случае logrotate не будет вращать catalina.out.

Чтобы исправить это, вы должны указать имя пользователя и группы в конфигурации logrotate. Так что в этом случае ваш файл /etc/logrotate.d/tomcat должен выглядеть следующим образом:

/usr/local/tomcat/logs/catalina.out {
    su tomcat tomcat
    copytruncate
    daily
    rotate 7
    compress
    missingok
    size 5M
}
0
04.11.2021, 20:16

Теги

Похожие вопросы