Использование screen для запуска процессов в фоне
Утилита screen позволяет создавать отдельные пространства в системе, между которыми можно переключаться. В этих пространствах можно запускать процессы (например, игровые серверы), которые будут работать даже после выхода из сессии SSH
Для установки screen на сервер воспользуйтесь командой
Работа с пространствами
Шпаргалка на будущее. Основные команды в двух словах
screen -S name
: создать пространство с именемname
Сочетание клавиш
Ctrl
+A
+D
: свернуть пространство (выйти из него)screen -ls
: посмотреть список запущенных пространствscreen -x name
: зайти в запущенное пространство
Далее подробное описание каждой из этих команд ->
Обратите внимание! При использовании команд важно сохранять регистр. -S и -s это разные аргументы. Если указано, например, -S, необходимо использовать именно заглавную букву
Создать новое пространство
Выполните эту команду, чтобы создать новое пространство. После создания вы сразу окажетесь внутри созданного пространства
Переменную
name
замените на любое удобное имя. Оно будет использоваться для переключения между пространствами, чтобы вы знали, что есть что
Свернуть пространство (выйти из него)
Чтобы свернуть пространство (выйти из него), в котором вы находитесь, необходимо нажать сочетание клавиш
Ctrl
+A
+D
Это вернет вас обратно туда, где вы были перед входом в пространство
Список доступных пространств
Используйте команду, чтобы посмотреть список доступных пространств
Вы получите список запущенных пространств в примерно таком виде:
Обратите внимание! У вас есть техническая возможность заходить в пространство внутри пространства. Получится такая (нежелательная) матрешка. Чтобы не запутаться, всегда проверяйте, где вы находитесь, прежде чем использовать команды screen -S
(создание пространства) или screen -x
(команда для входа в пространство, о которой расскажем чуть ниже)
В скобочках справа в списке пространств вы видите подписи Attached и Detached
Attached означает, что прямо сейчас вы находитесь внутри этого пространства. Нажмите сочетание клавиш
Ctrl
+A
+D
, чтобы свернуть его (выйти из него)Detached означает, что это пространство в данный момент работает в фоне (то есть вы в нем не находитесь)
Вернуться в уже созданное пространство
Используйте эту команду, чтобы развернуть пространство (войти в него)
Вместо переменной
name
подставьте имя пространства из списка, который можно узнать командойscreen -ls
. Обратите внимание на подписи Attached и Detached в списке пространств, о которых мы говорили в предыдущем блоке
Если у вас создано только одно пространство, команду screen -x
можно использовать без указания имени пространства
Удалить созданное пространство
Если вы хотите полностью завершить работу в определенном пространстве, зайдите в него (
screen -x name
) и напишите команду
В таком случае пространство будет удалено и пропадет из списка
screen -ls
Обратите внимание! Команду exit нужно выполнять, когда запущенные процессы внутри пространства уже остановлены
Нужна помощь?
Напишите нам, мы поможем разобраться 😉
Last updated