opened image

Основы работы с утилитой screen

Утилита screen может быть полезна на сервере под управлением операционной системы Linux. Из справочной страницы: Screen — это полноэкранный оконный менеджер, который мультиплексирует физический терминал между несколькими процессами (обычно интерактивными оболочками). Данная утилита может использоваться, например, если необходимо запустить вручную какой-либо процесс и затем отключиться от сервера. Либо необходимо сохранить сеанс если есть вероятность потери сеанса, или вероятность того, что произойдёт какое-нибудь внештатное отключение от сервера, например, при сбое в интернет-подключении.

Для работы с утилитой screen потребуется подключиться к серверу по ssh. (В нашем блоге есть отдельная статья об этом).


Как установить утилиту screen


Для того чтобы установить утилиту screen, выполните в deb-подобных дистрибутивах:

apt-get install screen


В rpm-подобных:

yum install screen


Для запуска утилиты введите в командной строке:

screen


Также можно запустить сессию с названием, например:

screen -S archieving


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

Сеанс screen можно отсоединить и затем отключиться от сервера, продолжить выполнять другие задачи либо запустить ещё один screen. Для отсоединения от screen введите на клавиатуре комбинацию Ctrl+a, d (сначала нажмите вместе Ctrl+a, затем d). Вы вернётесь в предыдущий режим Вашей ssh сессии, от которой можете отключиться.

Сеансов screen можно открыть несколько. Если не задавать имя при создании сеанса, ему будет присвоен числовой идентификатор и имя по-умолчанию. Для просмотра списка сеансов screen выполните команду:

screen -ls



В выводе можно увидеть список сеансов: их идентификационный номер и название. Если название не было задано, оно добавляется автоматически (например, pts-0.myserver).

Для того чтобы снова присоединиться к существующему сеансу (если он был один) выполните команду:

screen -r


Если сеансов несколько, будет выведен список существующих. Для присоединения к конкретному сеансу, нужно указать его имя. Например,

screen -r archieving


или

screen -r 30887


Чтобы выйти из screen сессии и закрыть её, введите exit либо нажмите комбинацию Ctrl+d.

Рассмотрены не все возможности данной утилиты. Есть много других опций командной строки, а также команды, которые можно использовать внутри screen сессии (такие, как создание окон, переключение между ними и много других). Для того чтобы узнать все возможности программы, обратитесь в её справочное руководство:

 

man screen

 

Как получить справку по комбинациям?


Получить справку по комбинациям, которые можно использовать внутри screen, можно нажав сначала Ctrl+a затем символ "?".

 

 

Заключение

Были рассмотрены основные возможности утилиты screen, создание сессий, от которых можно отключиться или запускать длительные процессы не боясь отключений от сервера.


Также предлагаем рассмотреть другие полезные статьи: