92% системного журнала заполнено сообщением о 'ureadahead', игнорирующем относительный путь
Я только что включил свой ноутбук (используя 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 моего системного журнала заполнено такими сообщениями?
3 ответа
Ureadahead делает одну из двух вещей, когда он запускается: если /var/lib/ureadahead/pack
существует и ему не больше года, он предварительно читает файлы, записанные в пакете. Однако, если пакет не существует или устарел, ureadahead работает в режиме "трассировки", отслеживая, какие файлы открыты, и записывая их в файл пакета, который будет использоваться в будущих загрузках.
Это режим трассировки, который выдает эти сообщения. Так что, если вы загрузитесь снова в течение года, никаких сообщений. Вот почему люди видят проблему, казалось бы, "решающуюся самому", но они вернутся через год, и их можно будет вновь вызвать, удалив /var/lib/ureadahead/pack
;
Есть триггер пакета, чтобы сделать это, когда все меняется в /etc/init.d
поэтому перечитывание часто производится после обновления. Ureadahead, кажется, всегда работал таким образом, но предупреждения просто пишутся в stderr, и до systemd и journald сообщения никуда не отправлялись. Вероятно, следует изменить ureadahead, чтобы эти сообщения выводились только в --verbose
режим, но в то же время я работал над файлом, запустив Ureadahead в --quiet
Режим. Я смог сделать это с помощью системного файла dropd-in: создать файл с именем /etc/systemd/system/ureadahead.service.d/quiet.conf
содержащий
[Service]
ExecStart=
ExecStart=/sbin/ureadahead -q
Просто apt purge ureadahead
- как из космического убунту отказался от него. Это никогда не помогало, и для большинства из нас, кто только перезагружается, когда есть обновление, это никогда не помогало вообще.
Я бы порекомендовал просмотреть журнал до того, как 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, где его искали. Одно (или оба) из этих действий решили проблему для меня.