Этот метод содержит ошибки в версиях Windows до 7, но он решает проблему на стороне Windows уравнения, а не на стороне Linux: вам не нужно устанавливать Linux для использования локального времени .
Одна из причин, по которой пользователи часто устанавливают RTC по местному времени, заключается в двойной загрузке с Windows (которая использует местное время).
Тем не менее, Windows [может обрабатывать RTC как UTC] с простым исправлением реестра. Рекомендуется настроить Windows для использования UTC, а не Linux для использования локального времени.
Используя regedit
, добавьте DWORD
значение с шестнадцатеричным значением 1
в реестр:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal
Это можно сделать из командной строки администратора:
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
Либо создайте файл * .reg (на рабочем столе) со следующим содержимым и дважды щелкните его, чтобы импортировать в реестр:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
Если вышеупомянутое, кажется, не имеет никакого эффекта, и 64-разрядный вариант Windows используется, использование
QWORD
значения вместо DWORD
значения может решить проблему.
Если Windows попросит обновить часы из-за изменений в летнем времени, сообщите об этом. Часы останутся в UTC, как и ожидалось, только с корректировкой отображаемого времени.
Аппаратные часы и системные часы могут нуждаться в обновлении после установки этого значения. Если у вас возникли проблемы со смещением времени, попробуйте переустановить tzdata и затем снова установить часовой пояс:
# timedatectl set-timezone America/Los_Angeles