92% системного журнала заполнено сообщением о 'ureadahead', игнорирующем относительный путь

36

Я только что включил свой ноутбук (используя 64-битную версию Ubuntu 15.10) и проверил системный журнал на наличие сегодняшних журналов. Из общего

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

и содержание как:

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

Почему ~% 92 моего системного журнала заполнено такими сообщениями?

Мостафа Ахангарха
источник
Правда ничего?
Мостафа Ахангарха
как насчетsudo systemctl disable ureadahead.service
dashesy

Ответы:

25

Когда запускается, ureadahead выполняет одно из двух действий: если он /var/lib/ureadahead/packсуществует и ему не больше года, он предварительно считывает файлы, записанные в пакете. Однако, если пакет не существует или устарел, ureadahead работает в режиме «трассировки» , отслеживая, какие файлы открыты, и записывая их в файл пакета, который будет использоваться в будущих загрузках.

Это режим трассировки, который выдает эти сообщения. Так что, если вы загрузитесь снова в течение года, никаких сообщений. Вот почему люди видят, что проблема, по-видимому, «решается сама собой», но они вернутся через год, и их можно будет вновь вызвать, удалив /var/lib/ureadahead/pack;

Есть триггер пакета, чтобы сделать это, когда все меняется /etc/init.d, поэтому перечитывание часто выполняется после обновления. Ureadahead, кажется, всегда работал таким образом, но предупреждения просто пишутся в stderr, и до systemd и journald сообщения никуда не отправлялись. Вероятно, следует изменить ureadahead, чтобы выводить эти сообщения только в --verboseрежиме, но пока я работал с файлом, запустив ureadahead в --quietрежиме. Я был в состоянии это сделать с Systemd выпадающим в файле: создайте файл с именем , /etc/systemd/system/ureadahead.service.d/quiet.confсодержащим

[Service]
ExecStart=
ExecStart=/sbin/ureadahead -q
RFM
источник
8

Так же, apt purge ureadaheadкак и в космическом Ubuntu отказался от него. Это никогда не помогало, и для большинства из нас, кто только перезагружается, когда есть обновление, это никогда не помогало вообще.

RFM
источник
С тех пор, как я опубликовал этот вопрос, прошло много времени, и я перешел на более новую версию Ubuntu. Поэтому я не могу проверить, поможет ли это другим. Но спасибо за ваш вклад. Я надеюсь, что это будет полезно для других, кто попадает в этот вопрос
Мостафа Ахангарха
Я только что столкнулся с этой проблемой, с недавно установленной Ubuntu Server 16.04.5. Собираюсь убрать ureadahead.
Endrju
Я попытался удалить Ureadahead, как советовали, однако это также удалит Ubuntu-минимальный (это на Ubuntu 16.04)
Мохан Nbs
1
ubuntu-minimal - это просто псевдо-пакет, который зависит от пакетов, включающих минимальную установку Ubuntu, один из которых (в 16.04) является Ureadahead. Поскольку у вас уже установлены все минимальные пакеты, удаление ubuntu-minimal ничего не изменит. Однако, если вам это не нравится, другим способом остановить запуск ureadahead при загрузке будет «sudo systemctl disable ureadahead.service».
рфм
2

Я бы порекомендовал просмотреть журнал до того, как ureadahead начнет писать в него.

У моей системы были те же симптомы, и я обнаружил ошибки, связанные с отсутствием Java Runtime Environment:

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

А также ошибки, отмечающие отсутствие определенной библиотеки: libvdpau_nvidia.so.

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

Я установил JRE8, а затем создал символические ссылки на /usr/lib/libvdpau_nvidia.so, где его искали. Одно (или оба) из этих действий решили проблему для меня.

FLM
источник
Спасибо за ваш ответ. Но я переустановил Ubuntu, и теперь я использую Ubuntu 16.04, поэтому не могу воспользоваться вашим советом. И все же по неизвестной причине проблема была решена через несколько дней.
Мостафа Ахангарха