Estou usando o CentOS, o NGINX e o Passenger para servir um aplicativo Rails.
Eu tenho o SELinux ativado e tive uma série de problemas com o logrotate.
Eu consegui resolver a maioria dos problemas seguindo vários conselhos on-line.
Infelizmente, o logrotate não está girando com sucesso meus arquivos de registro NGINX.
O NGINX está instalado em / opt / nginx
Este é o meu arquivo de configuração logrotate:
/opt/nginx/logs/*log {
daily
rotate 30
missingok
notifempty
sharedscripts
delaycompress
postrotate
[ ! -f /opt/nginx/logs/nginx.pid ] || kill -USR1 'cat /opt/nginx/logs/nginx.pid'
endscript
}
Estas são as mensagens que estou recebendo em / var / log / messages
Mar 9 03:49:14 localhost setroubleshoot: SELinux is preventing /usr/sbin/logrotate from rename access on the file logrotate_temp.RTg4y3. For complete SELinux messages. run sealert -l 8c5238cd-3e95-4af6-b150-498080c862b8
Mar 9 03:49:14 localhost setroubleshoot: SELinux is preventing /usr/sbin/logrotate from rename access on the file logrotate_temp.OjvGsG. For complete SELinux messages. run sealert -l 8c5238cd-3e95-4af6-b150-498080c862b8
Mar 10 03:55:46 localhost logrotate: ALERT exited abnormally with [1]
Eu tentei usar sealert
para atualizar as políticas, como as mensagens recomendam, mas isso não resolve o problema (suspeito que isso talvez seja porque os arquivos temporários sempre têm nomes diferentes).
Alguém pode sugerir como posso resolver isso para que os arquivos de log sejam rotacionados com sucesso.
- EDIT -
saída adicionada de
sudo sealert -l 8c5238cd-3e95-4af6-b150-498080c862b8
:
SELinux is preventing /usr/sbin/logrotate from rename access on the file logrotate_temp.NuwGkX.
***** Plugin catchall (100. confidence) suggests ***************************
If you believe that logrotate should be allowed rename access on the logrotate_temp.NuwGkX file by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# grep logrotate /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp