logrotate говорит, что при вращении журнала / повторном создании файла журнала разрешение отклонено - PullRequest
3 голосов
/ 02 июня 2011

Я новичок в logrotate на машинах Linux ... вот что я настроил в файле logrotate.d моего приложения:

/var/log/myapp.log {
daily
missingok
create 0660 root utmp
rotate 1
}

Я установил права владельца в файле myapp.log для учетной записи, которая запускает соответствующее приложение, используя chmod, непосредственно из оболочки bash.

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

/bin/bash: /var/log/myapp.log: Permission denied

Я знаю, что я делаю что-то не так с файлом конфигурации logrotate, или с chmod, или с чем-то еще ... Может кто-нибудь указать мне правильное направление и помочь мне решить проблему?

1 Ответ

5 голосов
/ 02 июня 2011

Я установил права владельца в файле myapp.log для учетной записи, которая запускает соответствующее приложение, используя chmod, непосредственно из оболочки bash.

... так что если "учетная запись, которая запускает приложение, о котором идет речь "- root, параметр конфигурации

create 0660 root utmp

неверен, потому что он просит logrotate создать новый myapp.log (после того, как он повернул оригиналmyapp.log до myapp.log.0) с разрешениями 0660, принадлежащими пользователю root и группе utmp.Замена их атрибутами, необходимыми для вашего приложения, должна решить проблему.

...