Форум русскоязычного сообщества Ubuntu


Автор Тема: Доступ по SSH к конкретному терминалу  (Прочитано 516 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн superfikus

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Здравствуйте!
Возможно ли по SSH получить доступ к открытому окну терминала?
Нужно, чтобы окно это и было видно на рабочей машине, и на удалённом клиенте, одно и тоже. Чтобы можно было в него вводить команды, и следить за логом, то есть - за происходящим в этом окне.
Короче - общий терминал непосредственно для пользователя машины, и по SSH.
Спасибо.

serchik

  • Гость
Re: Доступ по SSH к конкретному терминалу
« Ответ #1 : 09 Январь 2016, 12:48:18 »
Возможно. Связка ssh+tmux.

Оффлайн superfikus

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Доступ по SSH к конкретному терминалу
« Ответ #2 : 09 Январь 2016, 13:24:11 »
tmux позволит мне открыть несколько окон по ssh-подключению.
или как-то можно запустить tmux локально, а потом отдать эту сессию на ssh?

kononvaler

  • Гость
Re: Доступ по SSH к конкретному терминалу
« Ответ #3 : 09 Январь 2016, 13:24:39 »
Можно использовать screen http://help.ubuntu.ru/wiki/screen

Оффлайн superfikus

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Доступ по SSH к конкретному терминалу
« Ответ #4 : 09 Январь 2016, 14:05:09 »
разобрался. напишу порядок действий, вдруг народу понадобится.
могу ошибаться в терминологии.

tmux - менеджер терминалов.
tmux поднимает сервер, на котором может быть несколько сессий. мы будем использовать одну.

создадим новую сессию:
tmux new -s sessionnameгде sessionname - имя новой сессии.
сессия создана, подключение к сессии произошло автоматически.
сейчас мы уже не в обычном шелле, а в самом tmux, висим на сессии.

тут есть много возможностей создания новых окон, сплита, и остального. для простоты - мы будем исопльзовать одно окно терминала.
создать новое окно - <ctrl+b> c
посмотреть список окон - <ctrl+b> w
переключиться на следующее/предыдущее окно - <ctrl+b> n/p
закрыть текущее окно - <ctrl+b> x
чтобы выполнить какую-то из команд, нужно нажать комбинацию клавиш ctrl+b, и после нажать соответствующую клавишу. "с", например. создатсся новое окно.

и так. сервер работает, терминал открыт.
чтобы отвязаться от этого терминала и выйти в стандартный шелл - <ctrl+b> d
после выхода должна быть строка [detached], не [exited].
сессия остаётся висеть, всё выполняется.
просмотреть список работающих сессий:
tmux list-sessionsв том списке должна быть наша "sessionname".
чтобы подключиться к ней:
tmux attach -t sessinname
теперь удалёная часть. проще некуда.
допустим, что ssh-сервер поднят и настоен.
подключаемся, попадаем в терминал, и оттуда пишем знакомую строку:
tmux list-sessionsнаходим в списке нужную сессию, и подключаемся к ней точно так же, как раньше:
tmux attach -t sessinnameмы в том же терминале, в котором и на машине.
готово!

спасибо за наводку, serchik.

serchik

  • Гость
Re: Доступ по SSH к конкретному терминалу
« Ответ #5 : 09 Январь 2016, 14:36:15 »
Не за что. А еще можно второго пользователя подключать к сессии в режиме read-only в целях демонстрации/обучения, используя опцию -r.
P.S. ТС тему отметьте решенной.

 

Страница сгенерирована за 0.053 секунд. Запросов: 24.