Есть ли выход из терминала, который делает что-то вроде того, что делает GNU Screen?


8

Как многие из вас знают, GNU Screen - хороший инструмент, который позволяет вам делать что-то вроде:

Еще одно хорошее применение для отсоединения и подключения - функция «удаленного рабочего стола» в режиме консоли. Вы можете отсоединиться от сеанса экрана на работе, подключиться к машине из дома и снова подключить. Очень, очень удобно. Приложив немного дополнительной работы, вы можете даже подключить несколько терминалов к одному сеансу - отлично подходит для совместной работы и встреч.

Теперь мне интересно, есть ли способ сделать это без экрана. Ака вместо логута я набираю magiclogout и при следующем входе в систему я получаю старый пароль (если операционная система не перезагружена)

Ответы:


6

Бёбу основан на экране; в нем есть пункт меню, чтобы сделать его оболочкой по умолчанию.

Вы можете либо exitкак обычно, так и отключиться, alt-A, Dкак с обычным экраном, и ваша сессия будет ждать, когда вы снова войдете в систему.

Кроме того, он добавляет ряд ключей для управления терминалом, F2для создания нового терминала F3и F4для перемещения между окнами, а также строку состояния с рядом полезных индикаторов, таких как ожидающие обновления пакетов.

Он устанавливается по умолчанию в сборках Ubuntu Server и быстро становится терминалом по умолчанию на большинстве серверов, которыми я управляю.

Как я уже сказал, byobu зависит от экрана для работы, хотя ... Я не знаю ни одного способа возобновления сеанса, кроме продолжения работы процесса на целевой машине.

Редактировать: byobu также обернет tmux (который используется по умолчанию в более новых версиях Ubuntu). Вам не нужно ничего делать в большинстве случаев - он просто использует терминальный мультиплексор по умолчанию.



1

У вас может быть что-то подобное с программным обеспечением для удаленного рабочего стола, которое создает собственный сеанс, например, FreeNX на сервере и клиент NoMachine на клиенте.

Вы также можете использовать это, когда сервер и клиентский компьютер являются одним и тем же компьютером, чтобы имитировать то, что вы просите.


1

Это невозможно без использования экрана, бёбу (как упоминалось Адрианом) или подобных инструментов.

Интерактивная оболочка должна быть подключена к tty. Если вы выйдете из системы, оболочка потеряет соединение с tty и выйдет.

Экран и друзья избегают этого, создавая один или несколько постоянных виртуальных ttys. При выходе из системы оболочка остается подключенной к виртуальному tty и не замечает, что пользователь был отключен.

Для неинтерактивных программ, tty не требуется, и вместо экрана, вы можете использовать nohup.

Как указывает Адриан, возможно использовать byobu по умолчанию, и, как вы знаете, многие опытные пользователи просто начнут screenделать это первым делом после входа в систему. Есть ли конкретная причина, вы хотите избежать экрана?


Я считаю экран неудобным, потому что я привык к прокрутке, а режим копирования немного раздражает меня. Маленькие вещи, которые я знаю. :)
NoSenseEtAl

0

Вы можете запустить команду через nohup:

nohup command &

Если вы хотите сохранить результат где-нибудь

nohup command > output.txt &

Теперь вы должны отсоединить работающее программное обеспечение

  1. нажатие CTRL-Z
  2. войти bg
  3. disown %1

Дополнительные подсказки nohupможно найти на его странице руководства ( http://ss64.com/osx/nohup.html ), то же самое для disown( http://ss64.com/osx/disown.html ).

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.