Перенаправить консоль на ttyUSB0

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

Я пытаюсь перенаправить консоль на ttyUSB0, с идеей потом отключить tty1, но ничего не получается….

Я добавил

GRUB_CMDLINE_LINUX="console=tty1 console=ttyUSB0,19200n8r"

в /etc/default/grub и запустил update-grub, что подтверждает, что это работает, глядя на /proc/cmdline. Но на консоли ничего не появляется, а /proc/consoles включает только:

tty1                 -WU (EC p  )    4:1

Обратите внимание, что если я запускаю agetty -t10 -8 -h ttyUSB0 19200 и это работает без проблем, я могу войти с другого конца (с помощью GTKTerm).

Я также добавил в /etc/initramfs-tools/modules (и запустил update-initramfs -u)

usbserial
ftdi_sio

Думая, что USB-устройство загружается слишком поздно, но это не дало никакого эффекта.

Какие-либо идеи? Кому-нибудь удалось это сделать работать?

Спасибо.

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

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

Шаги по перенаправлению консоли на ttyUSB0

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

    GRUB_CMDLINE_LINUX="console=ttyUSB0,19200n8r console=tty1"

    Обратите внимание на порядок параметров и наличие кампании console= для обоих устройств. После внесения изменений не забудьте обновить конфигурацию GRUB с помощью команды:

    sudo update-grub
  2. Проверка загрузки модуля USB:
    Вы правильно добавили модули usbserial и ftdi_sio в файл /etc/initramfs-tools/modules. Это помогает загрузить необходимые драйверы для вашего устройства. Не забудьте обновить образ initramfs, выполняя команду:

    sudo update-initramfs -u

    Убедитесь, что модули загружаются на этапе инициализации системы.

  3. Проверка конфигурации консольных устройств:
    После перезагрузки системы проверьте вывод в файле /proc/consoles. Если на данный момент присутствует только tty1, это может указывать на проблему с загрузкой модуля или конфигурацией GRUB.

  4. Логирование и диагностика:
    Если нет вывода на ttyUSB0, попробуйте добавить параметр debug в строку GRUB для получения детальной информации о процессе загрузки. Это может помочь выявить проблемы с инициализацией:

    GRUB_CMDLINE_LINUX="console=ttyUSB0,19200n8r console=tty1 debug"
  5. Настройка agetty для ttyUSB0:
    Для проверки работы консоли с ttyUSB0, вы можете использовать agetty. Как вы уже упомянули, это работает:

    agetty -t10 -8 -h ttyUSB0 19200

    Убедитесь, что agetty автоматически запускается для ttyUSB0, добавив соответствующую запись в файл /etc/inittab или создав systemd юнит-файл для управления этой службой.

  6. Отключение tty1:
    После успешной настройки ttyUSB0 не забудьте отключить консоль на tty1, однако следует делать это осторожно, чтобы не потерять доступ к системе в случае ошибки. Это можно сделать путем изменения конфигурации systemd или закомментировав в /etc/inittab.

Заключение

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

Надеюсь, эти шаги помогут вам в успешном перенаправлении консоли на ttyUSB0. Если возникнут дополнительные вопросы, не стесняйтесь их задавать!

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

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