Порою приходится на сервере выполнять задачи затратные по времени. В моем случае — скрипт парсинга товаров, который будет работать неделю. И чтобы не зависеть от своей рабочей машины и местного провайдера — я его запускаю в терминале сервера. Сервер на то и сервер, чтобы работать сутками беспрерывно.
Но с сервером тоже не все так просто. Я запускаю скрипт в терминале и после завершения сеанса — он прекратит свое выполнение. Я же не могу неделю держать открытым терминальное соединение с сервером, да и теряется весь смысл. Иными словами, надо подключиться к серверу, запустить скрипт, закрыть сессию и чтобы скрипт продолжил работу.
И вот тут приходит на помощь приходит консольное приложение Screen для работы с сессиями. С помощью него можно создавать несколько сессий, переключаться между ними, сохранять и восстанавливать их.
Т.к. я работаю с битрикс окружением, то у меня на сервере centos. Поэтому устанавливаю приложение под Screen командой (если оно уже не установлено):
1 |
# yum install screen |
Далее создаю сессию:
1 |
# screen |
Далее запускаю нужные скрипты, и сохраняю эту сессию:
1 |
Жмем клавиши Ctrl + a + d |
Далее можно закрывать сессию терминала, скрипт продолжит работать на сервере.
Чтобы просмотреть сохраненные сессии есть команда:
1 |
# screen -ls |
Так выведется список ваших сохраненных сессий с их идентификаторами. Вернуться в нужную сессию можно командой:
1 |
# screen -r <id сессии> |
Продвижение сайтов в Москве — https://stalingradpictures.ru
Образование за границей — https://friendlyeducation.ru/%d0%be-%d0%bf%d1%80%d0%be%d0%b5%d0%ba%d1%82%d0%b5/