Многопоточный ли cron?
olegon 14 декабря, 2006 - 10:47
Использую vixie-cron, интересует следующее:
Если у меня в cron.daily несколько заданий (скриптов), будут ли они запускаться одновременно или последовательно? Т.е. если на отработку одного потребуются сутки, значит ли это, что остальные пойдут лесом, пока он не отработает?
»
- Для комментирования войдите или зарегистрируйтесь
/usr/sbin/run-crons
А вы сами посмотрите файл /usr/sbin/run-crons :
Так что вроде как пока один не закончит работу другой не начнёт.
Re: /usr/sbin/run-crons
Верно для скрипта типа
cat /dev/random >>/dev/null
И в принципе неправильно для скрипта типа
cat /dev/random >>/dev/null &
PS
Так о каких скриптах речь?
Думаю, не стоит
Думаю, не стоит цепляться к формулировкам "&" сделает detach процессу, как я понимаю, так что скрипт завершится. А Peter спасибо.
Разрулил - воткнул в нужные
screen -m -d
Никто и не
Никто и не придирается. Баш парралелен. Надо ему об этом только сказать. & Переводит задачу в бэкграунд. Ежели запускать так то задачи пойдут параллельно. В противном случае последовательно. На грабли параллелизма наступил при создании скриптов инициализации (оно чего-то сразу перестало грузиться :).
А детач это из другой оперы. Это событие происходит когда закрываешь терминалку с запущенной из нее программкой. Скриин спасает потому что умеет обрабатывать SIGHUP. Он при закрытии консоли не падает сам и не дает упасть дочерним процессам. Ежели не нужно глазками следить за процессом использовать скрин в кроне излишне. Кстати все сообщения (те что на консоль должны вылезать) крон пытается укладывать в почту.
Можно вместо
Можно вместо скрина nohup использовать. Он исключительно отлавливает себе SIGNUP. И вывод в nohup.out перенаправляет по умолчанию.