Вы когда-нибудь сталкивались с ситуацией, когда вы выполняете длительную задачу на удаленном компьютере, и внезапно ваше соединение разрывается, сеанс SSH завершается, и ваша работа теряется. Что ж, в какой-то момент это случилось со всеми нами, не так ли? К счастью, есть утилита screen
которая позволяет нам возобновлять сеансы.
Содержание
Введение
Экран или GNU Screen — это терминальный мультиплексор. Другими словами, это означает, что вы можете запустить сеанс экрана, а затем открыть любое количество окон (виртуальных терминалов) внутри этого сеанса. Процессы, запущенные в Screen, будут продолжать работать, если их окно не отображается, даже если вы отключитесь.
Установить Linux GNU Screen
В настоящее время пакет screen предустановлен в большинстве дистрибутивов Linux. Вы можете проверить, установлен ли он в вашей системе, набрав:
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
Если в вашей системе не установлен screen, вы можете легко установить его с помощью диспетчера пакетов вашего дистрибутива.
Установите Linux Screen в Ubuntu и Debian
sudo apt update
sudo apt install screen
Установите Linux Screen на CentOS и Fedora
sudo yum install screen
Экран запуска Linux
Чтобы начать сеанс экрана, просто введите screen
в консоли:
screen
Это откроет сеанс экрана, создаст новое окно и запустит оболочку в этом окне.
Теперь, когда вы открыли сеанс экрана, вы можете получить список команд, набрав:
Ctrl+a
?
Начало именованного сеанса
Именованные сеансы полезны, когда вы запускаете несколько сеансов экрана. Чтобы создать именованный сеанс, запустите экранную команду со следующими аргументами:
screen -S session_name
Всегда рекомендуется выбирать описательное имя сеанса.
Работа с Linux Screen Windows
Когда вы запускаете новый сеанс экрана, он создает одно окно с оболочкой в нем.
У вас может быть несколько окон внутри сеанса Screen.
Чтобы создать новое окно с типом оболочки Ctrl+a
c
, ему будет присвоен первый доступный номер из диапазона 0...9
.
Ниже приведены некоторые наиболее распространенные команды для управления экраном Linux в Windows:
Ctrl+a
c
Создать новое окно (с оболочкой)Ctrl+a
"
Показать все окноCtrl+a
0
Перейти в окно 0 (по номеру)Ctrl+a
A
Переименовать текущее окноCtrl+a
S
Разделить текущую область по горизонтали на две областиCtrl+a
|
Разделить текущий регион по вертикали на два регионаCtrl+a
tab
Переключить фокус ввода на следующую областьCtrl+a
Ctrl+a
Переключение между текущей и предыдущей областьюCtrl+a
Q
Закрыть все регионы, кроме текущегоCtrl+a
X
Закрыть текущую область
Отключиться от сеанса экрана Linux
Вы можете отключиться от сеанса экрана в любое время, набрав:
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
если файл присутствует. Мы можем изменить настройки экрана по умолчанию в соответствии с нашими предпочтениями, используя файл .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 и создавать несколько окон экрана из одного сеанса, перемещаться между окнами, отсоединять и возобновлять сеансы экрана и персонализировать свой экранный терминал с помощью файла .screenrc
.
Больше информации о Gnu Screen можно найти на странице руководства пользователя Screen .
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.