Бухгалтерия ждёт выгрузку заказов к девяти утра по Москве, а файл приходит только в полдень. Коллега уверяет, что поставил в расписании девять часов и московский пояс. Посмотри расписание выгрузки, её журнал и часы машины.
Посмотри на выгрузку
Выгрузка заказов lab-export должна запускаться в 9:00 по Москве. Посмотри её расписание в /etc/cron.d/lab-export, последние строки её журнала /var/log/lab-export.log и часы машины.
Сначала предположи
В расписании — 9 часов и строка TZ=Europe/Moscow. Во сколько по Москве выгрузка запускалась в последние дни, судя по её журналу?
Теперь начни упражнение, выполни команду и сверь прогноз с выводом.
Выгрузка стоит на 9:00, в её журнале — 12:00:01 MSK, а date показывает время в UTC. Что из этого следует?
-
cron запускает задание в ту минуту, что стоит в расписании: в журнале — 12:00:01, через секунду после начала минуты.
-
Строку cron прочитал: время в журнале выгрузки — MSK, его задание получило TZ=Europe/Moscow.
-
dateи журнал показывают один момент в разных поясах: MSK — это UTC+3. Сами часы машины верные.
cron запустил выгрузку в 9:00 по UTC — это 12:00 по Москве.