AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

UTC, GMT и прочие времена

Unix Way 14 сообщений -
#1

Разгребаю все втреченные в астериске проблемы... Думал баг в астериске. Мне нужно было в переменную получить текущее время. Думал получу время, а получил ерунду Smile У меня часовой пояс GMT+6, ну или UTC+6. Вот вывод астериска:

Цитата:
-- Executing [338@default:1] Set("SIP/102-08418ae8", "DATA=2007-11-23 08:50:43") in new stack
-- Executing [338@default:2] NoOp("SIP/102-08418ae8", "GMT: 2007-11-23 08:50:43") in new stack
-- Executing [338@default:4] NoOp("SIP/102-08418ae8", "GMT+6: 2007-11-23 02:50:43") in new stack
-- Executing [338@default:6] NoOp("SIP/102-08418ae8", "GMT-6: 2007-11-23 14:50:43") in new stack
-- Executing [338@default:8] NoOp("SIP/102-08418ae8", "UTC+6: 2007-11-23 02:50:43") in new stack
-- Executing [338@default:10] NoOp("SIP/102-08418ae8", "Omsk: 2007-11-23 14:50:43") in new stack


Получается что по мнению астериска у меня GMT-6, а GMT+6 где-то на другой стороне земли... Оказалось что так же думает и сам линукс Sad Кто-нибудь подскажет что за проблема? Может это какой древний баг или что-то донастроить надо?

_________________
OpenSUSE 11.2 / Asterisk-trunk / Celeron 1100 (512mb) / chan_lcr / Linksys / Aastra 9112i
http://igorg.ru
#2

Что говорит date?
Лучше использовать timeconfig и выставить часовой пояс в виде Asia/Seul - ты ведь в одном часовом поясе с Сеулом?
#3

Так и существует Asia/Omsk, он у меня и стоит. Просто я всегда думал что я в GMT+6, а оказывается тут зарыта какая-то проблема.

PS. Сеул далекова-то... Скорее Дели или Шри-Ланка.

_________________
OpenSUSE 11.2 / Asterisk-trunk / Celeron 1100 (512mb) / chan_lcr / Linksys / Aastra 9112i
http://igorg.ru
#4

Ded писал(а):
Что говорит date?
#5

я ставлю всегда в конфиге ntp - "local" (вместо GMT или UTC) потом сую в крон:
Код:
45 05 * * * /usr/sbin/ntpdate -b -u pool.ntp.org > /dev/null 2>&1

и не знаю никаких проблем со временем.
рекомендую всем.
#6

anest писал(а):
я ставлю всегда в конфиге ntp - "local" (вместо GMT или UTC) потом сую в крон:
Код:
45 05 * * * /usr/sbin/ntpdate -b -u pool.ntp.org > /dev/null 2>&1

и не знаю никаких проблем со временем.
рекомендую всем.
Не рекомендуй. Это работает, но идейно - неверно.
ntpdate - подвигает рывком время сервера на правильное сpool.ntp.org, однако, дальше лучше запустить сервис ntpd и всё.
service ntpd start.
chkconfig --list смотрим в каком статусе ntpd для инит 3, если выключен - то включаем
chkconfig --level 3 ntpd on
#7

Ded писал(а):
дальше лучше запустить сервис ntpd и всё.

а что это изменит? или демон время меняет не рывком? Smile
я не верю что за сутки время на компе может уйти болше чем на пару секунд. а значит это не критично - хоть рывком хоть не рывком.
хотя в плане идеологии (или теории?) ты прав конечно.
#8

anest писал(а):
Ded писал(а):
дальше лучше запустить сервис ntpd и всё.

а что это изменит? или демон время меняет не рывком? Smile
Конечно нет! ntpdate может подвинуть сразу с какой то мифической даты 1 января 2000 года до настоящей, а ntpd синхронизирует всё время высчитывая погрешность и подправляя ход часов.

ntpd[582]: kernel time sync enabled 2001
#9

ну начнем с того что на работающей машине, с уже установленной системой, взяться неоткуда некой мифической дате Wink
но даже если она там все же окажется - неужели не нужно ее поставить в верное положение? или может быть ntpd будет по твоему аккуратно по чуть-чуть ее двигать в нужном направлении? и как долго он буждет это делать, пока не приведет в норму? 10 лет? или 50? Mr. Green
как я уже сказал - по теории ты прав, а на практике иной раз всё по другому. и не всегда нестандартные решения оказываются такими страшными чтобы не попробовать (и не научиться чемуто новому еще).
#10

Вот тоже хотел узнать по поводу времени.
Делаю до сих пор на все серваки как anest, с помощью крона и ntpdate. НО... недавно читал вниметельно README, который идет с астериском Smile.

Цитата:
* SPECIAL NOTE ON TIME

Those using SIP phones should be aware that Asterisk is sensitive to
large jumps in time. Manually changing the system time using date(1)
(or other similar commands) may cause SIP registrations and other
internal processes to fail. If your system cannot keep accurate time
by itself use NTP (http://www.ntp.org/) to keep the system clock
synchronized to "real time". NTP is designed to keep the system clock
synchronized by speeding up or slowing down the system clock until it
is synchronized to "real time" rather than by jumping the time and
causing discontinuities. Most Linux distributions include precompiled
versions of NTP. Beware of some time synchronization methods that get
the correct real time periodically and then manually set the system
clock.


А получается при смене времени делать что... Че-то туплю. Если используется UTC, то на час переведется быстро? Не ждать же пока ntpd на час будет уводить время.
#11

Вот! Моя правда всё-тки!
У нас всё правильно, включая переход на летнее/зимнее время, а как - не скажу.
#12

Ded писал(а):
Вот! Моя правда всё-тки!
У нас всё правильно, включая переход на летнее/зимнее время, а как - не скажу.


Использовать UTC. Оно не переводится на зимнее/летнее время Smile

_________________
ys
http://voip.rus.net/
#13

сдаюсь, убедили.. Slap
#14

не заню вроде проблем не было

у меня хардварные часы на утс а линух сам под часовой поис подстраиваеца

Embarassed

_________________
нанотехнолигии в области Asterisk