>Добрый день! >При настройке юниксов, когда я настраивал текущий часовой пояс, при выводе команды >date я получал правильные дату и время. Однако, при получении текущей >даты и времени в программах на Си или PHP я получал >время, сдвинутое на 3 часа назад (т.е. время по Лондону). В >свое время я решил эту проблему тем, что установил Лондонский часовой >пояс, и время bios'a, программки date и при получении в >собственных программах стало совпадать. >Но теперь я решил настроить синхронизацию времени по ntp, и время стало >синхронизироваться неправильно, со сдвигом в 3 часа. >В связи с этим у меня такой вопрос: как правильно настраивается время >на UNIX-серверах? >Правильно ли я понял, что в биосе надо устанавливать не текущее время, >а Лондонское, т.е. сдвинутое на 3 часа назад, а при получении >времени в программах на Си или PHP надо всегда к нему >прибавлять сдвиг в 3 часа? вы в Си и возможно в php не теми функциями пользовались или неправильно. Поищите в документации, в handbook скорей всего сколько об этом упомянуто, а в FAQ'е точно должно быть. Можете воспользоваться контрольными словами: adjkerntz и tzsetup и в дополнение: # man adjkerntz # man tzsetup Заодно разберетесь с localtime и UTC(Coordinated universal time, оно же GMT - те по Гринвичу greenwich mean time) и разницей между ними. >С уважением, Андрей
|