На моем компьютере разработчика я скомпилировал модуль ядра, который я хочу использовать в системе Ubuntu. Это - простой тестовый модуль на данный момент что просто printk's сообщение.
На моем компьютере разработчика я могу протестировать это, это работает cat /var/log/messages
На моем компьютере Ubuntu I insmod
редактор .ko и попробованный это, но существует нет /var/log/messages
. Поиск Google сказал мне, что это было переименовано к /var/log/syslog
, но заглядывание /var/log
это, кажется, не существует также. Почему у меня нет журнала?
То, что я действительно вижу, следующее:
Xorg.0.log
Xorg.0.log.old
apt
dmesg
dmesg.0
dmesg.1.gz
dmesg.2.gz
dmesg.3.gz
dmesg.4.gz
dpkg.log
dpkg.lob.1
dpkg.log.2.gz
lastlog
lightdm
pm-powersave.log
pm-powersave.log.1
pm-powersave.log.2.gz
pm-powersave.log.3.gz
pm-powersave.log.4.gz
samba
udev
unattended-upgrades
/var/log/messages
не используется в Ubuntu (она была удалена вокруг Аккуратного). Мы используем /var/log/syslog
для этого. Все зарегистрировалось к 'сообщениям', тогда был также зарегистрирован в 'системный журнал', таким образом, мы избавились от одного из них.
У меня действительно есть системный журнал и kern.log в /var/log/
. Я ожидал бы, что последний будет содержать что-либо связанное ядро.
Существует лучший метод: journald
у демона есть все, что было зарегистрировано.
Можно перечислить сообщения ядра с:
$ journalctl -f _TRANSPORT=kernel
Это должно показать Вам что-либо связанное с ядром, и Вы можете grep результаты в случае необходимости. Но существует много опций уточнить Ваши результаты (см. ссылку или journalctl --help
).
Другие примеры (из ссылки):
Без аргументов все собранные журналы показывают нефильтрованные:
journalctl
С одним указанным соответствием показывают все записи с полем, соответствующим выражению:
journalctl _SYSTEMD_UNIT=avahi-daemon.service
Если два различных поля подобраны, только записи, соответствующие обоим выражениям одновременно, показывают:
journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097
Если два соответствия относятся к тому же полю, все записи, соответствующие любому выражению, показывают:
journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service
Если разделитель "+" используется, два выражения могут быть объединены в логическом ИЛИ. Следующее покажет все сообщения от процесса услуг Avahi с PID 28097 плюс все сообщения от D-автобусного-сообщения (от любого из его процессов):
journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service
Покажите все журналы, сгенерированные исполняемым файлом D-шины:
journalctl /usr/bin/dbus-daemon
Покажите все журналы ядра от предыдущей начальной загрузки:
journalctl -k -b -1
Покажите живой дисплей журнала от системной службы apache.service:
journalctl -f -u apache