Назад | Перейти на главную страницу

Доступ к локальной консоли через SSH

Я ищу способ взаимодействия с локальной консолью через SSH - точно так же, как вы бы поступили с подключенной напрямую клавиатурой.

В моем конкретном случае у меня есть сервер debian (только консоль, без X-системы), который отображает несколько текстовых значений на tty1. К этому компьютеру не подключены устройства ввода, только один дисплей. Конфигурация выполняется по ssh. Команды, выполняемые в SSH, должны отображаться на tty1.

Есть ли способ взаимодействовать с tty1 таким же образом, как сеанс VNC в системе X-Window?

Вы можете прочитать текст, отображаемый на экране в данный момент, из /dev/vcs. Если ваше окно терминала имеет такое же количество столбцов, что и фактический вывод экрана на сервере, вы можете просто ввести cat /dev/vcs и получите узнаваемый результат.

Вы можете добавить номер, чтобы получить доступ к определенной консоли, а не всегда к активной консоли. И вы можете использовать vcsa, если вам также нужна информация о форматировании. Так, например, вы можете использовать /dev/vcsa1 чтобы получить текст на первом ВК длинный с информацией о форматировании.

Другое дело - ввод с клавиатуры. AFAIR звонки, используемые gpm поддерживает только вырезание и вставку и не позволяет вводить произвольные нажатия клавиш. Несколько поисковых запросов в сети показали, что он не поддерживается "из коробки", но его можно воплощать в жизнь как водитель.

Если это актуальный сервер, он будет иметь функции внешнего управления (IPMI), которые позволят вам получить доступ к системной консоли. Например, серверы Dell называют это iDRAC, серверы HP - iLO и т. Д.

Если на вашем сервере нет такой функции, вы можете подключить к нему IP-KVM-устройство.

Я знаю, что это старый вопрос, но вот некоторые идеи:

  • Использование "экрана" - лучший способ

  • начни с ввода screen

  • введите вашу команду

  • нажмите CTRL + A d (чтобы выйти из экрана)

  • это отключит экран от текущего сеанса.

  • как только вы снова войдете на свой сервер, вы можете ввести: screen -ls чтобы увидеть список активных экранов

  • повторно прикрепите экран с помощью команды: screen -r <id of the screen>