Перенаправление последовательной консоли Linux

Я хочу перенаправить свой последовательный порт во время сеанса telnet в Linux.

У меня есть встроенный ящик Linux, который имеет последовательную консоль. После того, как я подключу telnet к коробке, я могу ввести как последовательную консоль, так и консоль telnet. Я хочу остановить доступ к последовательной консоли или перенаправить ее на что-то другое. После выхода из консоли telnet я снова смогу получить доступ к последовательной консоли. Может ли кто-нибудь предложить, пожалуйста?

Я планировал поставить cat /dev/console > /dev/ttyp0 когда начинается сеанс telnet. Это решает проблему не получить доступ к последовательной консоли, когда консоль сеанса telnet открыта, но когда я выхожу из консоли telnet и набираю что-то на последовательной консоли, для команды shell -/bin/sh: command not found (оболочка не запущена возможно?).

Благодарю.

  • Не удается настроить telnet для прослушивания портов и правил брандмауэра
  • Как проверить, открыт или заблокирован какой-либо порт на других серверах из dev?
  • Как использовать telnet через прокси-аутентификацию?
  • Как длина и ширина терминала передаются через SSH и telnet?
  • Использование telnet для получения заголовка веб-сайта
  • добавить отметку времени при начале каждой строки в сеансе telnet
  • telnet для хоста / порта работает, пока на этом хосте не прослушивается сервис на этом порту
  • Настроить DD-WRT-сеть и iptables через Android APP, возможно ли это?
  • One Solution collect form web for “Перенаправление последовательной консоли Linux”

    Каждая консоль имеет связанный с ней процесс. Обычно их можно легко найти в списке процессов. На Ubuntu это называется getty или agetty . В других системах это может быть login , или это может быть просто процесс оболочки.

    Все, что вам нужно сделать, – отключить этот процесс, чтобы отключить последовательный порт. Вы не можете убить его, потому что init будет просто порождать новый, но вы можете приостановить его:

     kill -STOP <pid> 

    Где вы находите <pid> с ps .

    Затем, когда вы хотите его повторно использовать, вы перезапустите его:

     kill -CONT <pid> 

    Или, если вы хотите, чтобы он начинал заново, убейте его и позвольте респаунту произойти:

     kill -KILL <pid> 

    Конечно, вы должны помнить, чтобы перезапустить его, прежде чем покинуть telnet. Если вам нужно что-то более безупречное, это зависит от того, какие утилиты у вас есть. Если у вас есть cron вы можете настроить что-то, что проверяет, прошло ли telnet (с последнего времени) и перезапускает последовательный терминал. Это было бы немного сложно, но возможно. Если у вас нет cron, тогда запустите какой-то фоновый процесс, который просыпается на SIGHUP и перезагружается. Это, наверное, еще более сложно.

    Linux и Unix - лучшая ОС в мире.