
Вы когда-нибудь сталкивались с ситуацией, когда вы выполняете длительную задачу на удалённом компьютере, и вдруг соединение обрывается, сеанс SSH прерывается, и вся работа теряется? С каждым из нас такое случалось, не правда ли? К счастью, есть утилита screen , которая позволяет возобновлять сеансы.
Введение
Screen или GNU Screen — это терминальный мультиплексор. Другими словами, это означает, что вы можете запустить сеанс Screen, а затем открыть любое количество окон (виртуальных терминалов) внутри этого сеанса. Процессы, запущенные в Screen, продолжат работу, даже если их окна не видны, даже если вы отключитесь.
Установка Linux GNU Экран
Пакет screen предустановлен в большинстве современных дистрибутивов Linux. Вы можете проверить, установлен ли он в вашей системе, выполнив команду:
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
Если в вашей системе не установлен screen, вы можете легко установить его с помощью менеджера пакетов вашего дистрибутива.
Установка Linux Screen в Ubuntu и Debian
sudo apt updatesudo apt install screen
Установка Linux Screen на CentOS и Fedora
sudo yum install screen
Стартовый экран Linux
Чтобы начать сеанс экрана, просто введите screen в консоли:
screen
Это откроет сеанс экрана, создаст новое окно и запустит оболочку в этом окне.
Теперь, когда вы открыли сеанс экрана, вы можете получить список команд, введя:
Ctrl+a ?
Начало именованного сеанса
Именованные сеансы полезны при запуске нескольких сеансов screen. Чтобы создать именованный сеанс, выполните команду screen со следующими аргументами:
screen -S session_name
Всегда полезно выбирать описательное название сеанса.
Работа с Linux Screen Windows
При запуске нового сеанса работы с экраном создается одно окно с оболочкой в нем.
В сеансе Screen может быть несколько окон.
Для создания нового окна с оболочкой нажмите Ctrl+a c , ему будет присвоен первый доступный номер из диапазона 0...9 .
Ниже приведены некоторые наиболее распространенные команды для управления окнами Linux Screen:
-
Ctrl+acСоздать новое окно (с оболочкой). -
Ctrl+a"Список всех окон. -
Ctrl+a0Переключиться на окно 0 (по номеру). -
Ctrl+aAПереименовать текущее окно. -
Ctrl+aSРазделить текущую область по горизонтали на две области. -
Ctrl+a|Разделить текущий регион по вертикали на два региона. -
Ctrl+atabПереключить фокус ввода на следующую область. -
Ctrl+aCtrl+aПереключение между текущим и предыдущим окнами -
Ctrl+aQЗакрыть все регионы, кроме текущего. -
Ctrl+aXЗакрыть текущий регион.
Отключиться от сеанса Linux Screen
Вы можете отключиться от сеанса экрана в любое время, введя:
Ctrl+a d
Программа, запущенная в сеансе экрана, продолжит работу после отключения от сеанса.
Повторное подключение к экрану Linux
Для возобновления сеанса работы с экраном используйте следующую команду:
screen -r
Если на вашем компьютере запущено несколько сеансов экрана, вам потребуется добавить идентификатор сеанса экрана после переключателя r .
Чтобы найти идентификатор сеанса, выведите список текущих сеансов экрана с помощью:
screen -ls
There are screens on: 10835.pts-0.linuxize-desktop (Detached) 10366.pts-0.linuxize-desktop (Detached) 2 Sockets in /run/screens/S-linuxize.
Если вы хотите восстановить экран 10835.pts-0, то введите следующую команду:
screen -r 10835
Настроить экран Linux
При запуске screen считывает параметры конфигурации из /etc/screenrc и ~/.screenrc , если они есть. Мы можем изменить настройки Screen по умолчанию в соответствии со своими предпочтениями с помощью файла .screenrc .
Вот пример конфигурации ~/.screenrc с настроенной строкой состояния и несколькими дополнительными опциями:
~/.screenrc
# Turn off the welcome message startup_message off # Disable visual bell vbell off # Set scrollback buffer to 10000 defscrollback 10000 # Customize the status line hardstatus alwayslastline hardstatus string '%{ = kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'

Базовое использование экрана Linux
Ниже приведены самые основные шаги для начала работы с экраном:
- В командной строке введите
screen. - Запустите нужную программу.
- Для отсоединения от сеанса экрана используйте последовательность клавиш
Ctrl-a+Ctrl-d. - Повторно подключитесь к сеансу экрана, введя команду
screen -r.
Заключение
В этом уроке вы узнали, как использовать Gnu Screen. Теперь вы можете начать использовать утилиту Screen и создавать несколько окон Screen в одном сеансе, перемещаться между окнами, отключать и возобновлять сеансы Screen, а также персонализировать свой терминал Screen с помощью файла .screenrc .
Дополнительную информацию о Gnu Screen можно найти на странице Руководства пользователя Screen .
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.
Связанные руководства