Добавить в корзинуПозвонить
Найти в Дзене

Screen linux как закрыть сессию

Есть несколько способов закрыть сессию screen в Linux — выбор зависит от того, хотите ли вы сначала подключиться к сессии или завершить её «на расстоянии». После этого сессия завершится, и вы вернётесь в обычный терминал. Используйте опцию -X quit для отправки команды quit напрямую: screen -S имя_сессии -X quit Пример: screen -S my_session -X quit Если не помните имя, используйте ID из screen -ls: screen -S 12345 -X quit Если сессия зависла и не реагирует на quit, найдите её PID и завершите принудительно:
Оглавление

Есть несколько способов закрыть сессию screen в Linux — выбор зависит от того, хотите ли вы сначала подключиться к сессии или завершить её «на расстоянии».

Способ 1. Подключиться и выйти (рекомендуемый)

  1. Посмотрите список активных сессий:screen -ls
    В выводе увидите что‑то вроде:There is a screen on:
    12345.pts-0.hostname (Detached)
  2. Подключитесь к нужной сессии:screen -r 12345
    (вместо 12345 укажите ID из вывода screen -ls).
  3. Выйдите из сессии:
    Введите команду:exit

    Или нажмите Ctrl+A, затем k (подтвердите y).
    Либо нажмите Ctrl+A, затем \ (подтвердите y для выхода из всех окон).

После этого сессия завершится, и вы вернётесь в обычный терминал.

Способ 2. Завершить сессию без подключения

Используйте опцию -X quit для отправки команды quit напрямую:

screen -S имя_сессии -X quit

Пример:

screen -S my_session -X quit

Если не помните имя, используйте ID из screen -ls:

screen -S 12345 -X quit

Способ 3. Принудительно завершить через kill

Если сессия зависла и не реагирует на quit, найдите её PID и завершите принудительно:

  1. Получите PID сессии:ps aux | grep screen
    Найдите строку с нужной сессией (например, 12345).
  2. Убейте процесс:kill 12345
    Если не помогает, используйте kill -9:kill -9 12345

Важные нюансы

  • Если в сессии несколько окон, нужно выйти из каждого (exit или Ctrl+A k), иначе сессия не завершится.
  • Для отсоединения без закрытия используйте Ctrl+A d (сессия останется в фоне).
  • Чтобы избежать конфликтов, проверяйте список сессий через screen -ls перед завершением.

Полезные команды

  • screen -ls — показать все активные сессии.
  • screen -r ID — подключиться к сессии по ID.
  • screen -d — отсоединить сессию (если она подключена в другом терминале).
  • man screen — полная документация по утилите.