Очень простая задачка для собеседования системного администратора: надо зашедьюлить cronjob, чтобы он выполнялся каждый день в два часа ночи.
По пекинскому времени. ‎· псы в рапиде
С учётом перевода времени? ‎· toro de lidia
И сколько лет он должен выполняться? ‎· toro de lidia
Я знаю как сделать в лоб по локальному времени машины или по UTC посмотрев на разницу во времени. Но вот как сделать чтобы с переводом не трогая время машины? Кажется стандартным кроном никак. ‎· denistsyplakov
^не обязательно одной строчкой. Летом так, зимой этак. Вернее, в дни перевода. ‎· birdwatcher
^ spoiler /в смысле тогда решение тривиально/ ‎· denistsyplakov
Не помню, может быть, есть день, когда два часа ночи вообще не наступает, тогда задача сильно гнилая. ‎· birdwatcher
^ когда-то писал сборщик статистики трафика (когда он еще массово был платный) и был удивлен, что в последнее воскресенье октября 2 часа ночи случается дважды (когда часы еще переводили) и длятся эти сутки аж 25 часов. ‎· Der Große Schlange
^ Я как-то (очень давно) сидел ночью за компом, а винда переводила время с 3:00 на 2:00, через час опять, потом снова, и так до рассвета и дальше. ‎· seliv
Нормальный сисадмин, думаю, сразу скажет, что время на сервере должно быть UTC. ‎· 9000
^ и чо? Если клиенту в Пекине должен приходить отчёт в 2 ночи, чем поможет UTC? ‎· вот под крыльями кончится лёд
^^зависит. Я, где ни работал, на всех серверах по всему миру всегда было наше, чикагское время. ‎· birdwatcher
^^ тем, что в UTC нет летнего времени и его не ебёт. Впрочем, это всё разговоры в пользу бедных, в китае нет DST. ‎· Кибертаджик
Так чо делать-то, отцы? ‎· псы в рапиде
Посчитать разницу в таймзонах и поставить как надо. Если у тебя амстердам - поставить на -7 часов, т.е. 0 18 * * * (если я не проебал и таймзона в амстердаме действительно GMT+1) ‎· Кибертаджик
Про ноль минут, конечно, я утрирую. Ставить крон на 0 минут плохо, потому что каждый мудак ставит крон на 0 минут и там дикая вспышка нагрузки получается. ‎· Кибертаджик
# CST = UTC + 08 ‎· silpol
0 18 * * * command ‎· silpol
"Чё делать": уточнять постановку задачи. Нам нужно регулярно гонять задание вне часов пик? UTC на фиксированное время. Гонять задание через N часов после другого задания, исполняемго по местному времени, но не попадающему на момент смены? Менять время пуска в при переходе на летнее, например, в полдень подменять кронтабы по кронтабу :) Нужно гонять в 2 часа локального времени, чтобы синхронизироватся с кем-то ещё? Уточнять отношение к летнему времени у этих кого-то. Ещё что-то? Расскажите. (Да, разумеется, локальное время на сервере всегда UTC.) ‎· 9000
из моего локального TZ адОчка - в индии есть таймзона не на границе почасовой шкалы, а на получасье. но я не настоящий сварщик (тм) ‎· silpol
^ есть и на четверти часа. Были и хуже ‎· breedable with other kitties
Но два часа — это же red herring: Clock Changes in Beijing, Beijing Municipality, China ◢ Last change: 1991 SEP 15 1 hour Back 15 Sep 1991, 00:00 No further time changes in 2016 in Beijing ‎· breedable with other kitties