FAQ: Синхронизация времени между Windows, Mac OS X и Ubuntu
Если вы хотите увидеть на нашем сайте ответы на интересующие вас вопросы обо всём, что связано с техникой Apple, операционной системой Mac OS X (и её запуском на PC), пишите нам через форму заявки на обзор или форму обратной связи.
К нам поступил следующий вопрос:
день добрый!
на хакинтоше стоят Snow Leopard, Windows 7 и Ubuntu. постоянно сбивается время после перезагрузки (( мак ос всегда его на 4-5 часов назад переводит! подскажите, как исправить проблему
Проблема с синхронизацией времени актуальна не только для хакинтошей, но и для настоящих Маков, на которых Windows работает через Boot Camp. Её причина очень проста: Mac OS X всегда считает, что время, записанное в BIOS (или EFI), записано там в формате UTC — проще говоря, по Гринвичу. К нему она прибавляет соответствующую поправку на часовой пояс.
А Windows поступает иначе: она напрямую считывает время из BIOS. И если вы это время меняете, либо оно автоматически синхронизируется, то в BIOS оно запишется уже в исправленном формате: UTC+поправка.
Как решить это противоречие? Есть два подхода: один — со стороны Mac OS, другой — со стороны Windows и Linux.
Решение средствами Mac OS X
Сразу скажем — это не лучший способ. Суть в том, что для Mac OS X мы задаём в качестве часового пояса время по Гринвичу. Например, в настройках (пульт Дата и время, вкладка Часовой пояс) выберите в качестве своего населённого пункта Рейкьявик.
Кроме того, на вкладке «Дата и время» обязательно отключите автоматическую синхронизацию времени, иначе получится ещё хуже, чем было.
После этих действий время в Windows всегда будет правильным, и Mac OS X не будет его портить. Но почему это не лучший способ? Дело в том, что если вы синхронизируете с Mac OS X какой-нибудь гаджет — например, iPhone, то неправильный часовой пояс будет искажать многие важные данные. К примеру, время входящих SMS тоже окажется гринвичским.
Решение средствами Windows и Linux
Другой способ — это заставить Windows и Linux считывать время из BIOS так же, как это делает Mac OS. К счастью, такая возможность действительно предусмотрена, но спрятана она очень глубоко.
В Windows вам придётся запустить из окна «Выполнить» программу regedit — Редактор реестра. Затем зайдите в ветку \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation и создайте там параметр DWORD с именем RealTimeIsUniversal и значением, равным единице:
В Linux (по крайней мере, в Ubuntu), необходимо отредактировать файл /etc/default/rcS в любом текстовом редакторе и заменить содержимое параметра «UTC=no» на «UTC=yes».
После этого перезагрузитесь в Mac OS X и выставите родной часовой пояс, заодно можете включить автоматическую синхронизацию времени через Интернет. После перезагрузки в Windows и Ubuntu вы увидите точно такое же время.