Не удается записать сообщения ядра в последовательный консоль системы systemd.

Вопрос или проблема

Я хотел бы записывать сообщения ядра системы в серийный консоль на ttyS0.

Проблема была рассмотрена в Как получить сообщения ядра на серийной консоли в системе systemd?, но у меня все еще не получается это заставить работать.

У меня в командной строке ядра установлены systemd.journald.max_level_console=debug, console=ttyS0,115200, loglevel=7, и в /etc/systemd/system.conf установлено ShowStatus=no.

Тем не менее, хотя я вижу сообщения ядра на консоли в начале процесса загрузки, после запуска службы журнала я больше не получаю никаких сообщений ядра, записываемых в консоль.

Например, если я подключаю USB-мышь к плате, в консоли ничего не записывается, но journalctl -f показывает:

11 фев 10:09:45 a20 ядро: usb 3-1: новое устройство USB низкой скорости номер 4 с использованием ohci-platform
11 фев 10:09:45 a20 ядро: usb 3-1: найдено новое USB-устройство, idVendor=046d, idProduct=c069, bcdDevice=56.01
11 фев 10:09:45 a20 ядро: usb 3-1: новые строки USB-устройства: Mfr=1, Product=2, SerialNumber=0
11 фев 10:09:45 a20 ядро: usb 3-1: Продукт: USB Лазерная Мышь
11 фев 10:09:45 a20 ядро: usb 3-1: Производитель: Logitech
11 фев 10:09:45 a20 ядро: вход: Logitech USB Лазерная Мышь как /devices/platform/soc/1c14400.usb/usb3/3-1/3-1:1.0/0003:046D:C069.0005/input/input6
11 фев 10:09:45 a20 ядро: hid-generic 0003:046D:C069.0005: input,hidraw2: USB HID v1.10 Мышь [Logitech USB Лазерная Мышь] на usb-1c14400.usb-1/input0

Есть мысли?

systemd.log_level=debug systemd.log_target=kmsg loglevel=7 systemd.journald.forward_to_console=1

log_target также может быть установлен непосредственно в console

https://fedoraproject.org/wiki/How_to_debug_Systemd_problems

https://freedesktop.org/wiki/Software/systemd/Debugging/

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

Ответ или решение

Чтобы настроить вывод сообщений ядра на последовательную консоль в системе, использующей systemd, выполните следующие шаги:

  1. Редактирование параметров загрузки ядра:
    Проверьте, что параметры ядра в вашем загрузчике настроены правильно. Например, если вы используете GRUB, отредактируйте файл /etc/default/grub и убедитесь, что там указаны следующие параметры:

    GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0,115200 loglevel=7"

    Если вы хотите отправлять сообщения systemd на консоль, добавьте параметры:

    systemd.log_level=debug systemd.log_target=console systemd.journald.forward_to_console=1

    После внесения изменений обновите конфигурацию GRUB:

    sudo update-grub
  2. Конфигурация journald:
    Убедитесь, что конфигурация journald настроена правильно. Откройте /etc/systemd/journald.conf и установите следующие параметры:

    [Journal]
    ForwardToConsole=yes
    MaxLevelConsole=debug

    Если этот файл отсутствует, создайте его.

  3. Настройка systemd:
    В файле /etc/systemd/system.conf необходимо установить параметр:

    [Manager]
    ShowStatus=no
  4. Перезагрузка системы:
    После завершения конфигурации перезагрузите систему для применения изменений.

  5. Проверка:
    После перезагрузки, подключившись к последовательной консоли (например, с помощью screen или minicom), проверьте, выводятся ли сообщения ядра. Вы можете также попробовать вызвать событие, которое должно генерировать сообщения ядра (например, подключение USB-устройства), чтобы убедиться, что всё работает корректно.

Если после выполнения всех вышеперечисленных шагов сообщения ядра по-прежнему не выводятся на последовательную консоль, убедитесь, что:

  • Устройство последовательного порта (ttyS0) правильно настроено и доступно.
  • На уровне железа нет никаких ограничений для вывода информации на последовательный порт.
  • Вы проверили журнал journalctl -b и убедились, что сообщения не теряются.

Эти шаги должны помочь вам настраивать вывод сообщений ядра на последовательную консоль в системе с systemd. Если проблема остаётся нерешённой, стоит дополнительно проверить конкретные конфигурации вашего дистрибутива, поскольку некоторые могут иметь дополнительные особенности или ограничения.

Оцените материал
Добавить комментарий

Капча загружается...