Não faz muito tempo, eu postei esta pergunta , e obtivemos uma resposta que funciona perfeitamente no Ubuntu 10.10 e no Linux Mint 10. O que ele fez foi enviar mensagens do kernel quando elas ocorriam em um script. No meu caso, ele foi redirecionado para um script que postou as mensagens do kernel na tela OLED do meu laptop. Eu fiz isso adicionando as seguintes linhas ao meu arquivo /etc/rsyslog.conf:
$template OLEDformat,"%msg%0
kern.* ^/opt/asusg50oled/utils/notify.sh;OLEDformat
Mais tarde, restaurei o arquivo rsyslog.conf para o normal e movi as linhas acima para um novo arquivo em /etc/rsyslog.d/00-asusg50oled.conf para facilitar o ajuste, se necessário. Como /etc/rsyslog.conf carrega tudo do /etc/rsyslog.d de qualquer forma, isso funcionou tão bem.
O problema, no entanto, é que isso não funciona mais no Ubuntu 11.04 e no Linux Mint 11 RC. Independentemente de eu colocar as linhas em /etc/rsyslog.conf ou em um arquivo em /etc/rsyslog.d/, só recebo uma mensagem encaminhada diretamente quando o rsyslog é iniciado. Verificar os arquivos já referenciados em /etc/rsyslog.conf mostra que o sistema está registrando eventos do kernel e dmesg
funciona normalmente.
Alguma coisa mudou no rsyslog entre o Ubuntu 10.10 e o 11.04, e existe uma solução alternativa?
Editar
Aqui está a saída de rsyslogd -v
no Linux Mint 11 RC e Ubuntu 11.04, onde a solução acima não funciona:
rsyslogd 4.6.4, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: No
FEATURE_NETZIP (message compression): Yes
GSSAPI Kerberos 6 support: Yes
FEATURE_DEBUG (debug build, slow code): No
Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
Esta é a saída de rsyslogd -v
no Linux Mint 10 e no Ubuntu 10.10, onde a solução acima funciona perfeitamente:
rsyslogd 4.2.0, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: Yes
FEATURE_NETZIP (message compression): Yes
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
De acordo com www.rsyslog.com , a versão estável mais recente do rsyslogd é, na verdade, 5.8.1, o que não parece ser disponível como uma atualização para o Ubuntu 11.04 ou Linux Mint 11RC neste momento.
Editar 2
Acabei de verificar que o openSUSE 11.4 está seguindo minhas linhas de configuração adicionadas para o rsyslogd corretamente. No openSUSE 11.4, a saída de rsyslogd -v
é:
rsyslogd 5.6.5, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: No
FEATURE_NETZIP (message compression): Yes
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
Infelizmente, eu estou achando que não sou louco pelo openSUSE, então voltarei ao Linux Mint, onde ainda estou tendo problemas. Eu estou querendo saber agora se pode haver algo diferente no kernel (chame de palpite). Alguma idéia?
Atualizar
Acabei de criar a partir do código-fonte e instalei o rsyslogd 5.8.1 (estável mais recente). Posso confirmar que foi instalado corretamente, porque a única mensagem encaminhada reflete o novo número da versão. Além disso, rsyslogd -v saídas:
rsyslogd 5.8.1, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: No
GSSAPI Kerberos 5 support: No
FEATURE_DEBUG (debug build, slow code): No
32bit Atomic operations supported: Yes
64bit Atomic operations supported: No
Runtime Instrumentation (slow code): No