Как перезапустить скрипт на Питоне?

D
На сайте с 28.06.2008
Offline
1101
1686

Сын изучает программирование и я дал побаловаться не нужный впс с Дебианом. Он там запустил скриптна питоне, повесил его на крон и радуется. И вот он спрашивает - а если я что-то изменю в скрипте - как его перезапустить?

И вот я не знаю.... Как перезапускают питон?

S
На сайте с 21.10.2015
Offline
33
#1

если он что то изменит в скрипте, в следующий раз крон запустит измененную версию скрипта. ничего перезапускать не надо...

D
На сайте с 28.06.2008
Offline
1101
#2

Я правильно понимаю - если в кроне стоит запуск каждую минуту - то каждую минуту скрипт именно перезапускается, а не то что еще одна копия скрипта запускается ?

M
На сайте с 17.09.2016
Offline
123
#3

Dram, ещё одна, новая копия, подымается естественно

cron понятия не имеет что запущено, а что нет

D
На сайте с 28.06.2008
Offline
1101
#4

Mobiaaa, странно, прошло уже пару часов, скрипт запускается каждую минуту, а в процессах висит один процесс скрипта.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#5

Dram, а как именно запускается в кроне скрипт? Вполне возможно, что это какой-то "долгоиграющий" скрипт, который долго выполняется?

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
D
На сайте с 28.06.2008
Offline
1101
#6

* * * * * /usr/bin/python /var/www/site/CTFsimple/main.py > /dev/null 2>&1

Это простая форма авторизации. И кстати, как писал salaev выше - если в ней че то изменить, то изменений не видно.

Приходится убивать процесс kill и ждать когда крон запсути его заново.

S
На сайте с 23.05.2004
Offline
316
#7

Для начала надо смотреть в скрипте, что там понаписано. Могу предположить, что там банальный вэб сервер и последующие его запуски отваливаются из за уже занятого 80 порта. А убив процесс, освобождается порт и получается возможность запустить его заново.

Хотя все равно гадание на молоке выходит.

Это просто подпись.
Оптимизайка
На сайте с 11.03.2012
Offline
396
#8

Dram, наверное там бесконечный цикл, т.е. это сервер, тогда вам не в крон это ставить нужно, а как демона запускать.

S
На сайте с 21.10.2015
Offline
33
#9

да, если это сервер или скрипт который работает долго - дольше чем период запуска - то использовать крон - не лучший вариант...

Но если хочется - то можно внести функциональность перед попыткой запуска проверять запущен ли сервер, если да - то спать дальше...

Sly32
На сайте с 29.03.2012
Offline
302
#10

вообще-то для таких вещей используют супервизоры

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий