
У меня есть куча устройств, на которых запущено похожее задание cron. В настоящее время я устанавливаю минуту и часы cron на случайное число (таким образом они не будут запускаться все одновременно).
$random_minute $random_hour * * * sudo /bin/script
Я хочу сохранить эту схему, делая каждое устройство случайным, но у меня также есть скрипт, который нужно запускать каждые 6 часов. Как я могу объединить что-то вроде выше с */6
?
решение1
В сутках не так уж много часов, так почему бы просто не
17 3,9,15,21 * * * sudo /bin/script
запускаться в 03:17 и каждые 6 часов?
Альтернативой может стать добавление сна в саму программу:
0 */6 * * * (sleep 11820; sudo /bin/script)
или запускать скрипт чаще (например, каждый час) и просто завершать работу скрипта, если фактическое задание было выполнено в течение последних < 6 часов.
решение2
В некоторых cron
реализациях можно использовать:
17 3-23/6 * * * * some command