Задание Cron отложено на ~ 1 секунду

Я выполняю следующее задание cron

* * * * * date "+\%Y\%m\%dT\%H\%M\%S" > /path/to/log 2>&1

, но оно выполняется с опозданием примерно на секунду, так как пишет, например,

20210817T210001

Как обеспечить выполнение задания cron в течение полной минуты?

1
задан 19 August 2021 в 11:30

1 ответ

Это также рассматривается в Неисправность сервера.

Мне лично нравится эта цитата: "Что cron может гарантировать, так это то, что ваше задание начнется не раньше указанного времени". Другими словами, cron не предназначен для того, чтобы быть хирургически точным до секунды. Большинство моих собственных заданий cron также запускаются в 01 или даже 02 секунды после полной минуты.

Для того чтобы запустить задания cron, cron сканирует, какие задания должны быть запущены в любой момент времени. Не будет ошибкой, если задание, запланированное на 12:00:00, на самом деле запустится в 12:00:01, поскольку время инициализации cron может варьироваться в зависимости от ряда факторов.

Если вам нужно, чтобы что-то срабатывало в точную секунду, вам следует поискать другое решение, а не cron - например, скрипт на Python или даже программу на C, которая постоянно отслеживает время.

10
ответ дан 20 August 2021 в 10:23

Другие вопросы по тегам:

Похожие вопросы: