92% do syslog é preenchido com a mensagem referente ao 'ureadahead' ignorando o caminho relativo


36

Acabei de ligar o meu laptop (usando o Ubuntu 15.10 de 64 bits) e verifiquei o syslog dos logs de hoje. Do total

$ cat /var/log/syslog | grep 'Mar 23' | wc -l
23791
$ cat /var/log/syslog | grep -P 'Mar 23.*Ignored relative path' | wc -l
21863

e o conteúdo é como:

Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:.: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:.: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:tunables: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:xdg-user-dirs.d: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:..: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:multiarch.d: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:..: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:home.d: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:..: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:..: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:abstractions: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:apparmor_api: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:..: Ignored relative path
.
.
.
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:3826/stat: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:3826/cmdline: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:list-c: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:tracing_on: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:events/fs/open_exec/enable: Ignored relative path
Mar 23 12:02:56 Ubuntu ureadahead[279]: ureadahead:events/fs/do_sys_open/enable: Ignored relative path

Por que ~% 92 do meu syslog é preenchido com essas mensagens?


Realmente nada?
— Mostafa Ahangarha 23/03

o que dizersudo systemctl disable ureadahead.service
— dashesy

Respostas:


25

O ureadahead faz uma de duas coisas quando é iniciado: se /var/lib/ureadahead/packexiste e não tem mais de um ano, ele lê os arquivos gravados no pacote. No entanto, se o pacote não existir ou for antigo, o ureadahead será executado no modo "rastreio" , monitorando quais arquivos são abertos e gravando-os no arquivo do pacote a ser usado em futuras inicialização.

É o modo de rastreamento que lança essas mensagens. Portanto, se você inicializar novamente dentro de um ano, nenhuma mensagem. É por isso que as pessoas estão vendo o problema aparentemente "se resolver", mas retornam em um ano e podem reaparecer removendo /var/lib/ureadahead/pack;

Há um gatilho de pacote para fazer isso quando as coisas mudam /etc/init.d, então a releitura é geralmente feita após uma atualização. O ureadahead parece sempre ter funcionado dessa maneira, mas os avisos são apenas escritos para stderr e, antes do systemd e journald, as mensagens nunca iam a lugar algum. Provavelmente o ureadahead deve ser alterado para colocar apenas essas mensagens em--verbose modo, mas, enquanto isso, eu trabalhei com o arquivo executando o ureadahead no --quietmodo. Consegui fazer isso com um arquivo drop-in systemd: crie um arquivo chamado /etc/systemd/system/ureadahead.service.d/quiet.confcontendo

[Service]
ExecStart=
ExecStart=/sbin/ureadahead -q


8

Apenas apt purge ureadahead- a partir do Ubuntu cósmico desistiu. Isso nunca ajudou muito e, para a maioria de nós, que apenas reinicia quando há uma atualização, nunca ajudou em nada.


Como já faz muito tempo desde que postei essa pergunta, atualizei para a versão mais recente do Ubuntu. Portanto, não posso verificar se isso ajudaria outros não. Mas obrigado pela sua contribuição. Espero que seja útil para outros que entrar neste assunto
— Mostafa Ahangarha

Acabei de encontrar esse problema com o Ubuntu Server 16.04.5 recém-instalado. Indo para remover ureadahead.
— precisa saber é o seguinte

Eu tentei remover o ureadahead como recomendado, no entanto, ele também removeria o ubuntu-minimal (isso no ubuntu 16.04)
— Mohan Nbs

11
O ubuntu-minimal é apenas um pseudo-pacote que depende dos pacotes que incluem uma instalação mínima do Ubuntu, um dos quais (no 16.04) é o ureadahead. Como você já possui todos os pacotes mínimos instalados, a remoção do ubuntu-minimal não muda nada. No entanto, se você não gostar disso, outra maneira de impedir que o ureadahead seja executado na inicialização seria "sudo systemctl disable ureadahead.service".
— rfm 12/03

2

Eu recomendaria examinar o log antes que o ureadahead comece a escrever nele.

Meu sistema teve os mesmos sintomas e o que encontrei foram erros relacionados à falta de um Java Runtime Environment:

gnome-session[939]: javaldx: Could not find a Java Runtime Environment!

Além de erros observando a ausência de uma determinada biblioteca: libvdpau_nvidia.so.

gnome-session[939]: Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory

O que fiz foi instalar o JRE8 e criar links simbólicos para /usr/lib/libvdpau_nvidia.so, onde estava sendo procurado. Uma (ou ambas) dessas ações resolveu o problema para mim.


Obrigado pela sua resposta. Mas eu reinstalei o Ubuntu e agora estou usando o Ubuntu 16.04, por isso não posso usar seus conselhos. No entanto, por algum motivo desconhecido, o problema foi resolvido após alguns dias.
— Mostafa Ahangarha
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.