2.9.8.9.1 Screen - запуск виртуальных терминалов в режиме сессий
Установка
Запуск новой сессии
Горячие клавиши
Окружение
- Версия ОС: 7.3
- Конфигурация ОС: Рабочая станция
- Версия ПО: screen-4.8.0
Screen — это приложение, позволяющее запускать несколько виртуальных терминалов в режиме сессий. После того как сессия создана, от неё можно отключиться, а позже — снова подключиться, причём с любого другого хоста, на котором установлен SSH-клиент.
Процессы, запущенные в screen, продолжают выполняться и после того, как пользователь отключается от сессии или вообще от хоста в целом. Это ещё одна причина (кроме повышения удобства работы в командной строке вследствие использования возможности перехода между окнами), по которой используется screen.
Если соединение с интернетом ненадёжное, или у пользователя нет возможности поддерживать постоянное соединение, или существует необходимость запустить выполнение процесса в офисе, а остановить — дома, то использование screen — способ решить подобные проблемы.
Вы можете подробнее ознакомиться с информацией о работе терминальных мультиплексоров, просмотрев наши обучающие видео:
на RuTube — Многооконность в консоли;
в Яндекс.Дзен — Многооконность в консоли;
в VK Видео — Многооконность в консоли.
На наших каналах вы также сможете найти много другой полезной информации.
Установка
Для установки программы screen выполните команду (потребуются права администратора):
sudo dnf install screen
Дальнейшая работа в программе выполняется от локального пользователя.
Запуск новой сессии
Для запуска новой сессии screen выполните команду:
screen
Горячие клавиши
В screen большое количество операций выполняются с помощью горячих клавиш. Для активации сочетания клавиш нужно нажать «Ctrl + A», отпустить, а потом нажать нужную клавишу. Также сочетания можно заменять текстом. Для его ввода нажмите «Ctrl + A» и «:», после чего вводите текст.
Команда screen обладает большим набором горячих клавиш. Полный их список можно посмотреть с помощью комбинации клавиш «Ctrl+a ?».
Рассмотрим основные из них:
«Ctrl+a c» — Создать новое окно;
«Ctrl+a n» — Перейти к следующем окну;
«Ctrl+a p» — Перейти к предыдущему окну;
«Ctrl+a a» — Изменить имя окна;
«Ctrl+a k» — Закрыть текущее окно;
«Ctrl+a 1» — Перейти к окну с номером 1 (можно использовать цифры от 0 до 9);
«Ctrl+a “» — Вывести список окон, стрелками выбрать необходимую для перехода;
«Ctrl+a S» — Разделить экран по горизонтали;
«Ctrl+a |» — Разделить экран по вертикали;
«Ctrl+a Tab» — Переключение между окнами;
«Ctrl+a d» — Отключиться от сессии screen (при этом процессы и приложения запущенные в сессии продолжают выполняться).
При создании новой сессии screen можно задать для нее название с помощью ключа -S <имя>:
screen -S session1
Просмотреть список активных сессий можно командой:
screen -ls
Чтобы подключиться к существующей сессии, выполните команду:
screen -x <имя_сессии> | <ID_сессии>
Рассмотрим пример использования утилиты при работе на удаленном хосте через ssh-соединение.
После подключения к удаленному хосту создайте новую сессию screen с названием session1:
screen -S session1
Затем выполните на хосте необходимые действия и команды. Для примера запустим ping до ресурса ya.ru:
ping ya.ru
Для отключения от сессии нажмите сочетание «Ctrl+a d». При этом процесс ping продолжит выполнение, даже если разорвать ssh-подключение к удаленной машине. Чтобы вернуться в нашу сессию выполним команду:
screen -r session1
Можно увидеть, что утилита ping все еще работает.
Для того чтобы разделить экран терминала пополам, нужно сначала нажать комбинацию «Ctrl+a», а затем «S» или «|» (т.е. «Shift + \»). При разделении окон новая оболочка не запускается на вновь созданной панели, для этого необходимо перейти в новое пространство с помощью «Ctrl+a+Tab» и вызвать новый экземпляр оболочки вручную с помощью «Ctrl+a+C».
Дата последнего изменения: 24.04.2025
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.