зимнее время

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

зимнее время

4625
Как добиться "перевода стрелок" системой в аппаратном таймере?

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Ilya A. Kovalenko
> Как добиться "перевода стрелок" системой в аппаратном таймере?
аппаратный таймер (RTC) идет в зоне GMT, в которой нет понятия "летнее
время", поэтому никаких переключений в нем производить не требуется

установите адекватную таймзону с переключением DST в системе


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

4625
27-Oct-2009 числа в 10:39 часов, Ilya A. Kovalenko написал(а) следующее:

> > Как добиться "перевода стрелок" системой в аппаратном таймере?
> аппаратный таймер (RTC) идет в зоне GMT, в которой нет понятия "летнее
> время", поэтому никаких переключений в нем производить не требуется

Я 10 лет не крутил аппаратный таймер. Это делала ОС FreeBSD.

> установите адекватную таймзону с переключением DST в системе

В аппаратном таймере локальное время. В значении TIMEZONE заведомо
неправильная разница в минутах между моим часовым поясом и UTC (или
GTM). DST включен. /etc/localtime представляет собой линк на
/usr/share/zoneinfo/столица_государства. PC физические находится в
одном часовом поясе со столицей. Сообщаемая системой аббревиатура
часового пояса совпадает с аббревиатурой, сообщаемой ОС FreeBSD на этом
PC. Только так удалось добиться от OpenBSD корректное зимнее время.

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений


Reply | Threaded
Open this post in threaded view
|

Re[2]: зимнее время

Ilya A. Kovalenko
>> > Как добиться "перевода стрелок" системой в аппаратном таймере?
>> аппаратный таймер (RTC) идет в зоне GMT, в которой нет понятия "летнее
>> время", поэтому никаких переключений в нем производить не требуется

> Я 10 лет не крутил аппаратный таймер. Это делала ОС FreeBSD.
повторю другими словами:

AFAIK (Пусть меня поправят гуру, если я в чем-то совру):

1. OpenBSD предполагает что таймер стоит по зоне GMT.

2. OpenBSD не переводит аппаратного таймера при DST (т.к. GMT этого
   не гребует.

это представляется мне правильней, нежели держании таймера на
локальном времени и обратном вычислении UTC согласно зоне

3. Временная зона привлекается лишь для определения приращения
   локального времени относительно таймера согласно местоположению
   сервера и DST

О реализации во FreeBSD мне, к сожалению, ничего не известно, но
винда, например, действительно использует в таймере локальное время.

Если на одной и той же машине попеременно используются две
несовместимые по использованию таймера системы, то я использую один
из двух воркэраундов:

1. (быстрый) Сказать OpenBSD что зона GMT, и предоставить винде
   переключать DST. Метод хорош для бука, в основном используемого в
   винде.

2. Указать правильные таймзоны, но после загрузки принудительно
   переустанавливать время с сервера (rdate(8) в BSD или аналог в
   винде)


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

4625
28-Oct-2009 числа в 12:04 часов, Ilya A. Kovalenko написал(а) следующее:

> >> > Как добиться "перевода стрелок" системой в аппаратном таймере?
> повторю другими словами:
> AFAIK (Пусть меня поправят гуру, если я в чем-то совру):
> 1. OpenBSD предполагает что таймер стоит по зоне GMT.

Данное условие не выполняется.

> Если на одной и той же машине попеременно используются две
> несовместимые по использованию таймера системы, то я использую один
> из двух воркэраундов:
>
> 2. Указать правильные таймзоны, но после загрузки принудительно
>    переустанавливать время с сервера (rdate(8) в BSD или аналог в
>    винде)

Вот этого я больше всего опасался. Нету Соломонова (удовлетворяющего
все ОС) решения. Как не крути, но придётся извращаться...

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Alexey Vatchenko-2
> Вот этого я больше всего опасался. Нету Соломонова (удовлетворяющего
> все ОС) решения. Как не крути, но придётся извращаться...

http://www.aleph0.com/computing/openbsd/dualboot/


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Alex V. Breger
In reply to this post by Ilya A. Kovalenko
> 1. (быстрый) Сказать OpenBSD что зона GMT, и предоставить винде
>    переключать DST. Метод хорош для бука, в основном используемого в
>    винде.

Винда тоже умеет использовать GMT.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001

Для FreeBSD

rm /etc/wall_cmos_clock
 (this is explained in the adjkerntz(8) manpage).

--
WBR, Alex V Breger
Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Alexander Yurchenko-3
On Wed, Oct 28, 2009 at 01:04:26PM +0300, Alex V. Breger wrote:
> > 1. (быстрый) Сказать OpenBSD что зона GMT, и предоставить винде
> >    переключать DST. Метод хорош для бука, в основном используемого в
> >    винде.
>
> Винда тоже умеет использовать GMT.
>
> [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
> "RealTimeIsUniversal"=dword:00000001

К сожалению эта штука работает только если отключена синхронизация
времени через Интернет. В противном случае после синхронизации время
уходит.

>
> Для FreeBSD
>
> rm /etc/wall_cmos_clock
>  (this is explained in the adjkerntz(8) manpage).
>
> --
> WBR, Alex V Breger

--
Alexander Yurchenko


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Grigoriy Orlov-4
In reply to this post by Alexey Vatchenko-2
On Wed, Oct 28, 2009 at 09:54:26AM +0200, Alexey Vatchenko wrote:
> > Вот этого я больше всего опасался. Нету Соломонова (удовлетворяющего
> > все ОС) решения. Как не крути, но придётся извращаться...
>
> http://www.aleph0.com/computing/openbsd/dualboot/

Про это же можно почитать в options(4):

     option "TIMEZONE=value"
     value indicates the time zone offset of the hardware realtime clock de-
     vice, in minutes, from UTC.  It is useful when the hardware realtime
     clock device is configured with local time, when dual-booting OpenBSD
     with other operating systems on a single machine.  For instance, if the
     hardware realtime clock is set to Tokyo time, value should be -540 as
     Tokyo local time is 9 hours ahead of UTC.  Double quotes are needed when
     specifying a negative value.

     option DST=value
     If value is non-zero, indicates that the hardware realtime clock device
     is one hour ahead of the offset given in `TIMEZONE', due to Daylight Sav-
     ing Time (DST).  If value is zero, the hardware realtime clock device is
     not in Daylight Saving Time.
 

        /gluk


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Grigoriy Orlov-4
In reply to this post by 4625
On Tue, Oct 27, 2009 at 02:22:30PM -0700, Buzzer wrote:

> 27-Oct-2009 числа в 10:39 часов, Ilya A. Kovalenko написал(а) следующее:
>
> > > Как добиться "перевода стрелок" системой в аппаратном таймере?
> > аппаратный таймер (RTC) идет в зоне GMT, в которой нет понятия "летнее
> > время", поэтому никаких переключений в нем производить не требуется
>
> Я 10 лет не крутил аппаратный таймер. Это делала ОС FreeBSD.
>
> > установите адекватную таймзону с переключением DST в системе
>
> В аппаратном таймере локальное время. В значении TIMEZONE заведомо
> неправильная разница в минутах между моим часовым поясом и UTC (или
> GTM). DST включен. /etc/localtime представляет собой линк на

Если файл с описанием временной зоны неправильный или отсутствует, то можно:

- взять файл из другого unix
- поправить существующий файл. tzfile(5), zic(8), zdump(8).
- Установить переменную TZ, указать в ней смещение и когда нужно
  переводить время. tzset(3). Это самый простой способ и работает на
  всех Unix, только нужный man фиг найдешь, вот и сейчас минут 5 искал.

        /gluk


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

Mike Belopuhov
In reply to this post by 4625
On Mon, Oct 26, 2009 at 14:08 -0700, Buzzer wrote:
> Как добиться "перевода стрелок" системой в аппаратном таймере?
>

в дополнение ко всем ответившим, можно еще заметить что:

# config -ef /bsd
ukc> timezone [mins [dst]]
ukc> quit

внесет поправку на то что записано в CMOS.

> --
> /Buzzer () кампания ascii ribbon - против писем в html формате
> /\ www.asciiribbon.org   - против проприетарных вложений
>
>


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

4625
In reply to this post by Alexey Vatchenko-2
28-Oct-2009 числа в 09:54 часов, Alexey Vatchenko написал(а) следующее:

> > Вот этого я больше всего опасался. Нету Соломонова (удовлетворяющего
> > все ОС) решения. Как не крути, но придётся извращаться...
>
> http://www.aleph0.com/computing/openbsd/dualboot/

Уже сделал это (и сообщил в листе). Цель частично достигнута - в
аппаратном таймере локальное время, все операционные системы показывают
корректное время. Кроме того, я имел целью:

1) Не крутить аппаратный таймер. (таки крутил с переходом на зимнее
время);

2) Не трогать ядро в моменты перехода на летнее и зимнее время. (есть
робкое основание думать, что это недостижимо)

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

4625
In reply to this post by Alex V. Breger
28-Oct-2009 числа в 13:04 часов, Alex V. Breger написал(а) следующее:

> > 1. (быстрый) Сказать OpenBSD что зона GMT, и предоставить винде
> >    переключать DST. Метод хорош для бука, в основном используемого в
> >    винде.
>
> Винда тоже умеет использовать GMT.

Не актуально. У меня нет оффтопа.

> Для FreeBSD

Здесь как раз нет проблем.

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений


Reply | Threaded
Open this post in threaded view
|

Re: зимнее время

4625
In reply to this post by Grigoriy Orlov-4
28-Oct-2009 числа в 14:35 часов, Grigoriy Orlov написал(а) следующее:

> > В аппаратном таймере локальное время. В значении TIMEZONE заведомо
> > неправильная разница в минутах между моим часовым поясом и UTC (или
> > GTM). DST включен. /etc/localtime представляет собой линк на
>
> Если файл с описанием временной зоны неправильный или отсутствует, то

Тут всё OK.

--
/Buzzer () кампания ascii ribbon - против писем в html формате
                /\ www.asciiribbon.org   - против проприетарных вложений