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