[Comm] время перевод автоматически

Dmitry Lebkov dima на sakhalin.ru
Пн Мар 30 08:55:02 MSD 2009


Анатолий Акатьев пишет:
> Доброе время суток!
> 	
> 	Уважаемые знатоки.
> 	Подскажите пожалуйста как в ALD 4 реализовано автоматический перевод времени 
> с летнего на зимнее и обратно?

Это называется не "автоматический перевод времени", а "локальное системное время".
Реализовано на  основе информации о временнОй зоне, хранящейся в бинарных файлах,
в /usr/share/zoneinfo. Период использования летнего/зимнего времени описывается
правилами (см. man zic). Скомпилированные правила находятся в соответствующих
файлах в /usr/share/zoneinfo.

Активный набор правли находится в /etc/localtime, настройка активной временной зоны
 - параметр ZONE в /etc/sysconfig/clock (после правки - удалить /etc/localtime и
от root'a выполнить комманду service clock tzset).

При старте системы системное время устанавливается по аппаратным часам компьютера,
с учетом настроек в /etc/sysconfig/clock (UTC=true -- предполагается, что время
аппаратных часов установлено по Гринвичу, UTC=false -- установлено время локального
часового пояса).

При остановке системы аппаратные часы могут быть синхронизированы с "системным
времением", если параметр HWCLOCK_SET_AT_HALT равен true (с учетом параметров
UTC, ARC и ZONE).

"Внтутри системы" время всегда отсчитывается "в секундах с начала Эпохи"
- 00:00:00 UTC, January 1, 1970. Всё остальное (переходы на летнее/зимнее и т.п.)
просто манипуляции над этим счётчиком секунд.

-- 
WBR, Dmitry Lebkov



Подробная информация о списке рассылки community