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

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

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

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

Благодарю.

  • Команда Openssl s_client всегда говорит 400 Bad Request
  • Rhel7: telnet: нет маршрута к хосту
  • Не удается настроить telnet для прослушивания портов и правил брандмауэра
  • Почему «telnet» буфер FTP управляет линиями подключения?
  • Переадресация портов не работает на mac osx
  • Telnet для порта 80 не показывает результаты
  • Как я могу использовать telnet для HTTP-порта 80?
  • telnet на localhost и loopback IP работает, но не LAN ip (Xen + Ubuntu)
  • 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 и перезагружается. Это, наверное, еще более сложно.

    Interesting Posts

    Добавление пользователя в группу, владеющую папкой, не дает пользователю доступа

    Должен ли владелец зашифрованного каталога регистрироваться для его доступа к системе?

    Перенос сервера CentOS

    Выполнение точного моментального снимка и инкрементного резервного копирования на удаленный сервер

    Поиск уникального идентификатора для SD-карт

    Попытка использовать `pwd` внутри псевдонима, дающего неожиданные результаты

    Как я могу легко определить, какое псевдотерминальное устройство назначено терминальному эмулятору?

    Скрипт для добавления пути к файлу рекурсивно

    Поиск отсутствующего последовательного номера в файле данных

    Яркость экрана возвращается к максимальному после возврата с дисплея `xset dpms` suspend

    Печать повторяющегося рисунка

    Fedora 20: проблемы ирбаланса в журналах, странное поведение

    Как исследовать случайный сброс на порт TCP-клиента, подключенный через интерфейс loopback к серверу

    Как найти файл, имя которого содержит заданную строку, например «abcde»?

    Что такое rsh.rlogin и как удалить rsh.rlogin

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