Найти в Дзене

Как запускать скрипт в фоновом режиме на Linux. Screen.

Оглавление

В данной статье подразумевается что Вы используете не свой ПК для запуска и работы скриптов, а виртуальные сервера Linux.

Есть существенная проблема при запуске Python скриптов на Linux машинах - все скрипты перестают работать при отключении от сервера или окончании сессии ssh.

Тут к нам на помощь приходит менеджер параллельных сессий Linux Screen.

Данный менеджер позволяет:

1. Запускать скрипты в фоновом режиме
2. Управлять процессами
3. Запускать каждый отдельный скрипт в отдельной сессии которая не отключится в случае если у Вас оборвется соединение или отключится свет
4. Контролировать каждый отдельный запущенный скрипт в отдельной сессии

Установка screen

Для того чтобы установить менеджер screen в терминале сервера введите команду:

sudo apt screen

Полезные команды и сочетания клавиш screen

1. screen - команда которая создает новую сессию

-2

После выполнения команды появится такое вот окно тут просто нажимаем пробел, и вуаля сессия создана.

Выглядит она также как и обычный терминал

-3

2. screen -r - подключиться к сессии если она одна, или показать все доступные сессии для подключения

-4

3. screen -r <path> - подключение к определенной сессии, где <path> это полный адрес сессии

screen -r 8535.pts-0.ip-172-31-91-174

4. Сочетание клавиш Ctrl+A+D - свернуть все сессии

5. Команда отключить сессию :quit

Данная команда используется, в случае если вы подключены к сессии и хотите ее полностью отключить и выйти из нее.

Сначала нажимаем сочетание клавиш Ctrl+A а потом сразу пишем :quit

-5

Для запуска скриптов в фоновом режиме Linux готов!

1. Создаем новую сессию
2. Запускаем скрипт
3. Сворачиваем сессию

Теперь при любым непредвиденных ситуациях скрипт будет продолжать работать.