Используем screen в Linux

Больше года одноклассник подбивал меня начать использовать screen во время работы. Шло время, у меня всё никак не доходили до этого руки. А зря…

Screen — это полноэкранный оконный менеджер, позволяющий из одного терминального сеанса работать сразу с несколькими окнами. Иными словами, подключившись к удалённой машине по ssh вы сможите работать сразу с несколькими его окнами внутри одной сессии подобно нажатию ctrl+alt+f1, ctrl+alt+f2… У программы есть одна важная особенность: при обрыве связи или отключении от «скрина» процессы, в нём запущенные не останавливаются и к ним можно вернуться в любой момент. Этому можно найти массу применений. Например, работая с удалённым сервером можно быть уверенным в том, что запущенное компилирование программы дойдёт до конца, даже если вдруг оборвётся связь.

Установка

Устанавливается программа как обычно, например, в Ubuntu так:

apt-get install screen

Стоит так же заметить, что в моей Ubuntu 10.04 Desktop этот пакет уже был в системе.

Использование Screen

Запуск программы:

screen

После запуска программы будет показана краткая информация о ней. Для того, чтобы убрать её нажимаем enter или пробел. Вы можете подумать, что ничего не произошло, однако, это не так: вы внутри терминала, запущенного в screen. После этого мы видим привычную нам консоль.

Для подачи команд screen используется сочетание клавишь ctrl+a. Ниже приведён список основных команд, служащих для управления оболочкой:

  • c — создание нового окна
  • n — переключение к следующему окну
  • p — переключение к предыдущему окну
  • k — закрытие окна
  • d —  отключение от скрина
  • » — список запущенных в скрине окон

Например, для создания нового окна нужно нажать ctrl+a и нажать клавишу c.

При отключении от скрина все окна и процессы, запущенные в них продолжают выполняться. Для просмотра запущенных скринов используется команда:

screen -ls

Вывод команды будет примерно таким:

There are screens on:
18388.pts-4.asid-ubuntu-vm (23.09.2010 05:05:30) (Detached)
18272.pts-0.asid-ubuntu-vm (23.09.2010 04:54:23) (Detached)
2 Sockets in /var/run/screen/S-root.

Для того, чтобы подключиться к запущенному скрину выполняем команду screen -r <id>. Например, так:

screen -r 18388.pts-4.asid-ubuntu-vm

или короче:

screen -r 18388

Если вы забыли отключиться от скрина с другой машины (в выводе screen -ls рядом с ним будет надпись atached), перехватить его можно с помощью параметра -rd:

screen -rd 18388

Для подключения к последнему скрину можно просто:

screen -r

Ну вот, вроде бы, и всё. Подробнее об этих и других командах, как обычно, в мане.

,

  1. Оставить комментарий

Оставьте комментарий