Время ожидания отключено при двойной загрузке

228

Двойная система загрузки Windows XP Pro и Ubuntu 12.04.

У меня установлен набор BIOS для правильного времени, а Ubuntu установлен для восточного времени США. Ubuntu будет загружаться, и время будет отключено на -4 часа. Если я исправлю время в Ubuntu, то при загрузке в Windows XP время будет выключено на + 4 часа.

Это новая установка 12.04. У меня не было этой проблемы, прежде чем переустанавливать Ubuntu.

    
задан Bill Walden 28.07.2012 в 19:48
источник

4 ответа

189

Ссылка

  

Несколько конфликтов времени загрузки системы

     

Операционные системы хранят и извлекают время в аппаратных часах   расположенный на вашей материнской плате, чтобы он мог отслеживать время даже   когда система не имеет мощности. Большинство операционных систем   (Linux / Unix / Mac) хранят время на аппаратных часах как UTC   по умолчанию, хотя некоторые системы (в частности, Microsoft Windows) хранят   время на аппаратных часах как «локальное» время. Это вызывает проблемы   в системе двойной загрузки, если обе системы рассматривают аппаратные часы   по-разному.

     

Преимущество использования аппаратных часов в качестве UTC заключается в том, что вы не   необходимо изменить аппаратные часы при перемещении между часовыми поясами или   когда переход на летнее время (DST) начинается или заканчивается по мере того, как UTC не имеет   DST или смещение временной шкалы.

     

Изменение Linux для использования местного времени проще и надежнее, чем   изменение Windows для использования UTC, поэтому системы Linux / Windows с двойной загрузкой   для использования местного времени.

     

Так как Intrepid (8.10), UTC = yes по умолчанию.

     

Использовать UTC для UTC

     

Примечание. Этот метод первоначально не поддерживался в Windows Vista и Server 2008, но вернулся с Vista SP2, Windows 7, Server 2008 R2   и Windows 8 / 8.1.

     

Чтобы MS Windows вычислила время с аппаратных часов в формате UTC.

     

Создайте файл с именем WindowsTimeFixUTC.reg с помощью следующий   и затем дважды щелкните по нему, чтобы слить содержимое с помощью   реестр:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=dword:00000001
     

Примечание. Служба времени Windows по-прежнему будет записывать местное время в RTC независимо от настройки реестра выше при выключении, поэтому она удобна   для отключения службы Windows Time с помощью этой команды (если синхронизация времени   все еще требуется, в то время как в Windows используется сторонняя синхронизация времени   раствор):

sc config w32time start= disabled
     

Отмена изменения
Вы можете создать файл со следующим   и затем дважды щелкните его, чтобы слить исходные изменения, так как   выше:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=-
     

Если служба времени Windows была отключена, включите ее снова с помощью   Команда:

sc config w32time start= demand
     

Сделать использование Linux «локальным» временем

     

Чтобы сообщить вашей системе Ubuntu, что аппаратные часы установлены на «local»,   время:

     

Системы Pre-Ubuntu 15.04 (например, Ubuntu 14.04 LTS):

     
  1. изменить /etc/default/rcS
  2.   
  3. добавить или изменить следующий раздел

    # Set UTC=yes if your hardware clock is set to UTC (GMT)
    UTC=no
    
  4.   

Ubuntu 15.04 и выше (например, Ubuntu 16.04 LTS):

     
  1. откройте терминал и выполните следующую команду

    timedatectl set-local-rtc 1
    
  2.   
    
ответ дан Eric Carvalho 28.07.2012 в 20:07
50

Чтобы установить часы BIOS в локальное время вместо UTC в версии на базе systemd (15.04 и выше), вам нужно будет использовать команду timedatectl . Согласно Arch Wiki :

  

Вы можете установить стандартное время аппаратного времени в командной строке.   Вы можете проверить, что вы настроили использовать:

$ timedatectl | grep local
     

Аппаратные часы можно запросить и установить с помощью timedatectl   команда. Чтобы изменить стандартное время аппаратного времени на местное время, используйте:

# timedatectl set-local-rtc 1
     

Если вы хотите вернуться к аппаратным часам в UTC, выполните следующие действия:

# timedatectl set-local-rtc 0
    
ответ дан muru 13.01.2016 в 04:40
27

Ваш часовой пояс Восточный , который в настоящее время является EDT (Eastern Daylight Time). EDT UTC минус четыре часа, то же самое, что и смещение, которое вы испытываете.

Когда это происходит в системе с двойной загрузкой, обычно это происходит потому, что одна операционная система думает, что аппаратные часы отслеживают местное время, а другая операционная система считает, что аппаратные часы отслеживают UTC.

В вашем случае ваши аппаратные часы, вероятно, установлены на локальное время и:

  • Windows настроена на использование локального времени, которое (учитывая ваши настройки времени) правильно .
  • Ubuntu настроен на использование UTC, которое (с учетом ваших настроек времени) неверно .

Если бы вы просто сбросили время в системе Ubuntu, либо вручную, либо автоматически , это было бы неправильно в Windows, так что это не очень хорошее решение.

Вместо этого лучшим решением, вероятно, является перенастроить Ubuntu для обработки времени аппаратного времени в качестве локального времени (тогда вы можете оставить свою конфигурацию Windows и время вашего аппаратного времени отдельно).

Чтобы сделать это, отредактируйте /etc/default/rcS как root и убедитесь, что у него UTC=no :

  1. Нажмите Alt + F2 .

  2. Введите gksu gedit /etc/default/rcS и нажмите Enter .

  3. Вероятно, вы увидите следующее:

    # assume that the BIOS clock is set to UTC time (recommended)
    UTC=yes
    
    • Если вы это сделаете, измените UTC=yes на UTC=no . (Или вы можете добавить комментарий тоже, изменив его на что-то вроде UTC=no # changed to accommodate Windows system . Все в строке после символа # является комментарием и нужно просто сделать ваши настройки более удобочитаемыми для человека.)
    • Если вы этого не сделаете, найдите любую UTC= . Если он раскоментирован (т. Е. Не имеет # в начале), измените его соответствующим образом. Если он прокомментирован, раскомментируйте его, удалив ведущий # и убедитесь, что он говорит UTC=no .
  4. Сохраните файл и закройте текстовый редактор.

  5. Перезагрузитесь, чтобы применить свои изменения и проверить, что время работает правильно в обеих операционных системах.

Источник: Ссылка

(Но это очень общее, я написал этот ответ, чтобы применить конкретно к вашей ситуации, что является довольно распространенной проблемой.)

    
ответ дан Eliah Kagan 28.07.2012 в 20:16
10

Исправление / etc / rcS не работало на моей установке Win7 / Ubuntu 14.04x64, а также никаких исправлений через графический интерфейс часов. Поскольку корень проблемы - время BIOS VS UTC, а Windows - боль в прикладе, когда дело доходит до использования UTC, я просто выбрал точку на карте, которая использует UTC + 0 (без изменений между BIOS и временем UTC) .

Попробуйте изменить свое местоположение в Рейкьявик (столица Исландии). Вуаля! Время Ubuntu изменится в соответствии с временем BIOS.

    
ответ дан OpensourceFool 03.07.2014 в 19:49