Как исправить расхождение времени при использовании двойной загрузки Windows-Linux

Пробовали ли вы когда-нибудь установить Linux рядом с Windows? Как правило вы попадете в неудачный эксперимент по путешествию во времени. Вы запускаете Windows после Linux в 17:00, и вдруг часы показывают, что еще только 15:00.

Это раздражающее явление присутствует почти во всех системах двойной загрузки Windows-Linux. Давайте узнаем, почему это происходит и как исправить эту странную проблему со временем и вернуться к текущей дате и времени.

Суть проблемы заключается в том, как обе эти операционные системы управляют аппаратными часами.

Аппаратные часы - это физический сегмент материнской платы вашего компьютера, который отвечает за поддержание времени. Он питается от батарейки CMOS и управляется ядром операционной системы, в которой вы работаете. Различные операционные системы управляют этими часами по-разному.

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

При использовании двойной загрузки Linux продолжает показывать правильное время, потому что, хотя он устанавливает аппаратные часы на UTC, он вычисляет разницу во времени между UTC и вашим местным временем и устанавливает внутреннее смещение в часах ОС.

Windows, однако, не знает и не привязан к изменению часового пояса аппаратных часов, и продолжает считывать время с аппаратных часов и представлять его как местное время.

Чтобы исправить это, необходимо настроить обе операционные системы на единогласную работу с аппаратными часами или часами ОС.

Давайте узнаем три способа исправить ситуацию, когда Windows показывает неправильное время при двойной загрузке после Linux.

Вы должны использовать только один из этих способов и не комбинировать их.

Как обсуждалось ранее, проблема возникает из-за того, что Linux устанавливает аппаратные часы на UTC. Самый простой подход к устранению неправильного отображения времени в Windows заключается в настройке Linux для установки аппаратных часов, иначе известных как часы реального времени (RTC), на местное время.

Тогда Windows будет получать местное время с системных часов и отображать его, устраняя проблему. Вот как настроить RTC на использование местного времени в Linux:

  1. Запустите новое окно терминала.
  2. С помощью команды timedatectl настройте RTC на использование местного времени, выполнив эту команду с префиксом sudo:
    $ sudo timedatectl set-local rtc 1
  3. Перезагрузите систему вручную или введите команду reboot.

Вот и все шаги, необходимые для настройки аппаратных часов на использование местного времени в Linux.

Чтобы отменить изменения, просто введите ту же команду с небольшой правкой, заменив «1» на «0». Это самый простой способ исправить проблему несоответствия времени при двойной загрузке.

Предыдущий способ должен был устранить все ваши проблемы со временем. Если это не так, вот быстрый способ исправить время в Windows без необходимости перезагрузки в Linux.

И Windows, и Linux оснащены функцией автоматической синхронизации времени, которая синхронизирует системное время с сервером времени в Интернете. Вот шаги, которые необходимо выполнить, чтобы включить автоматическую синхронизацию времени:

Щелкните правой кнопкой мыши в правом нижнем углу панели задач, где отображается время. В появившемся меню нажмите на Настройка даты и времени. Или вы можете открыть Настройки > Время и язык > Дата и время. Установите правильный часовой пояс, если он был неправильным, затем включите Установить время автоматически, нажав на ползунок под надписью, и завершите настройки, нажав на Синхронизировать сейчас. Вы должны увидеть, что время изменилось на местное. Теперь вы можете спокойно закрыть окно настроек и сосредоточиться на более важных делах.

Вот и все шаги, которые необходимо выполнить, чтобы исправить время в Windows, нарушенное при двойной загрузке Linux.

Как говорилось ранее, Windows предполагает, что аппаратные часы настроены на местное время, и не утруждает себя повторным преобразованием их в местное время, поскольку это было бы излишним.

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

Это более сложное решение, поэтому рекомендуется сначала попробовать два предыдущих решения и только потом прибегать к этому. В случае, если оба предыдущих решения не сработали, выполните следующие действия:

  1. Используя строку поиска или сочетание клавиш Win + R, откройте диалоговое окно «Выполнить» в Windows и введите regedit.
  2. Открыв редактор реестра Windows, перейдите в это место: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation.
  3. Щелкните правой кнопкой мыши на пустом месте, выберите New и добавьте новую запись Q-WORD (64-bit) Value, дав ей имя RealTimeisUniversal. Если вы используете 32-битную версию Windows, вам нужно добавить запись D-WORD (32-bit) Value.
  4. После того как запись добавлена, дважды щелкните на ней, установите значение 1 и перезагрузите систему.

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

Неправильное время при двойной загрузке - это общая проблема, с которой сталкиваются все пользователи при использовании двойной загрузки, независимо от того, какую версию Windows и Linux они используют.

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

Хотя виновник этой проблемы обычно кроется в том, как Linux и Windows подходят к измерению времени. Но иногда это может быть признаком неисправного оборудования или проблем с безопасностью, например, скрытым вредоносным ПО в вашей системе.

В случае, если ни одно из этих исправлений для двойной загрузки не помогло, проверьте работоспособность оборудования или поищите следы вредоносного ПО в системе.