Ontem /var/log/messages
em um servidor foi encontrado vazio. Olhando para /var/
mostra:
messages
messages-20161125
messages-20161127
Mas, ao tentar acessar mensagens, o 20161127 interrompe o processo. cauda, gato, etc, todos nunca retornam, não podem ser interrompidos e até mesmo matar -9 não ajuda. (ps mostra o processo em espera de IO)
lsof | grep messages
mostra: rsyslogd /var/messages-20161127
Portanto, o rsyslog ainda está usando a versão antiga do arquivo e não a fechou.
Este é um problema com a configuração do rsyslog? logrotate? Alguma dica de como evitar isso?
Obrigado!
EDITAR
Após a reinicialização, podemos recuperar o acesso às mensagens-20161127. Houve mensagens sobre "sincronização de tarefas: 30312 bloqueada por mais de 120 segundos". A hora do logrotate não corresponde à mensagem de erro de sincronização, mas talvez eles estejam relacionados.
Então, talvez a causa raiz seja o sistema de arquivos ter sido suspenso? / var / log / messages está no sistema de arquivos raiz. Todo o resto parecia estar funcionando normalmente ...
Veja minha outra pergunta lento / congelado ext4 // sincronismo de tarefas bloqueado em grandes servidores somente para gravação