Ситуация: вы зашли на сервер по SSH, запустили миграцию базы данных, которая идёт 40 минут. Закрыли ноутбук, пошли домой. Пришли утром — миграция оборвалась посередине, потому что SSH-сессия разорвалась, когда ноутбук уснул. Знакомо? screen решает эту проблему. Это терминальный мультиплексор, который держит сессию на сервере независимо от вашего подключения. Потеряли интернет? Закрыли ноутбук? Ребутнули локальную машину? Сессия на сервере продолжает жить. Базовые команды: # Создать новую сессию (имя присвоится автоматически) screen # Создать сессию с именем (рекомендую) screen -S deploy # Отключиться от сессии (процесс продолжается) # Ctrl+A, D # Посмотреть список сессий screen -ls # Подключиться к последней отключённой сессии screen -r # Подключиться к сессии с конкретным именем screen -r deploy # Убить сессию (если она зависла) screen -X -S deploy quit Вариант 1 (Запуск команды в screen и отключение): # Создать сессию, выполнить команду и отключиться screen -d -m -S backup
screen — терминальный долгожитель, который не бросает дела при отвале SSH
4 мая4 мая
2 мин