Acontece que este foi um bug introduzido em logrotate-3.7.9-6.9.1
e corrigido em logrotate-3.7.9-6.12.1
.
Estou usando o munin 1.4.5 no OpenSUSE 11.4. Ultimamente logrotate foi atualizado para corrigir alguns problemas de permissão e depois queixou-se com
Mar 3 12:15:05 lucien logrotate: error: "/var/log/munin" has insecure permissions. It must be owned and be writable by root only to avoid security problems. Set the "su" directive in the config file to tell logrotate which user/group should be used for rotation.
Mar 3 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-html.log: Bad file descriptor
Mar 3 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-limits.log: Bad file descriptor
Mar 3 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-update.log: Bad file descriptor
Mar 3 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-graph.log: Bad file descriptor
Mar 3 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-node.log: Bad file descriptor
Então eu adicionei as diretivas su
a /etc/logrotate.d/munin
e /etc/logrotate.d/munin-node
:
/var/log/munin/munin-html.log
/var/log/munin/munin-nagios.log
/var/log/munin/munin-limits.log
/var/log/munin/munin-update.log {
su munin munin
daily
missingok
rotate 7
compress
copytruncate
notifempty
create 640 munin munin
}
/var/log/munin/munin-graph.log {
su munin www
daily
missingok
rotate 7
compress
copytruncate
notifempty
create 660 munin www
}
/var/log/munin/munin-cgi-graph.log {
su wwwrun munin
daily
missingok
rotate 7
compress
copytruncate
notifempty
create 640 wwwrun www
}
/var/log/munin/munin-node.log {
su munin munin
daily
missingok
rotate 7
compress
copytruncate
notifempty
create 640 munin munin
}
Agora o logrotate não roda mais.
Mar 5 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-html.log: Bad file descriptor
Mar 5 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-limits.log: Bad file descriptor
Mar 5 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-update.log: Bad file descriptor
Mar 5 12:15:05 lucien logrotate: error: error reading /var/log/munin/munin-graph.log: Bad file descriptor
Mar 5 12:15:05 lucien logrotate: error: error setting owner of /var/log/munin/munin-cgi-graph.log-20120305: Operation not permitted
Mar 5 12:15:05 lucien logrotate: error: error opening /var/log/munin/munin-node.log: Permission denied
Um ls -la
de /var/log/munin/
é aqui .
Como faço para o logrotate funcionar novamente com munin?
Acontece que este foi um bug introduzido em logrotate-3.7.9-6.9.1
e corrigido em logrotate-3.7.9-6.12.1
.
Existe uma grande confusão nas suas permissões em / var / log / munin e no seu arquivo de configuração. Você tem um par diferente de usuário / grupo para seus arquivos e um grupo / par diferente em sua configuração.
Você tem 2 opções para resolver seu problema
Primeiro, você pode redefinir as permissões recursivamente com chown:
chown -R USER:GROUP /var/log/munin
Depois, se você escolher a segunda solução, terá que substituir todas as linhas su ...
por esta:
su USER GROUP
Se você escolher a primeira solução, terá que remover totalmente todas as linhas su ...
.
Execute logrotate manualmente como root com '-d' (como debug) e você verá uma boa saída falante.