Mam Arch Linux + Windows 8 na moim laptopie. W poprzednich wersjach systemu Windows w rejestrze ( HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal
) znajdował się kod DWORD, który przełącza się między czasem lokalnym a czasem UTC, ale wydaje się, że nie działa już w systemie Windows 8.
Dostaję teraz czas UTC w systemie Windows, ponieważ uważa, że BIOS daje mu czas lokalny, który jest w rzeczywistości czasem UTC, a po ponownym uruchomieniu w Arch Linux, zegar staje się czasem lokalnym-0400, ponieważ Arch uważa, że BIOS ma prawidłowy czas UTC.
Nie chcę, aby Arch Linux używał czasu lokalnego. Czy w ramach tego warunku istnieje jakieś możliwe rozwiązanie?
Odpowiedzi:
RealTimeIsUniversal jest naprawdę błędny i nie jest oficjalnie zalecanym rozwiązaniem (może dlatego wyłączono go w Win8?) Zobacz Zegar czasu rzeczywistego IBM PC powinien działać w UT i odpowiedź Raymonda Chena tutaj: Dlaczego Windows utrzymuje zegar BIOS w czasie lokalnym? . Na dzień dzisiejszy nie sądzę, aby istniało właściwe rozwiązanie tego problemu.
źródło
Domyślna usługa Czas systemu Windows zawsze zapisuje czas lokalny do zegara sprzętowego podczas zamykania, niezależnie od tego, co rejestr mówi o czasie rzeczywistym w UTC. Poza tym zastrzeżeniem system Windows będzie poprawnie traktował sprzętowy zegar czasu, jeśli rejestr zostanie poprawnie ustawiony. Spróbuj tego:
w32tm /config /update
sc config w32time start= disabled
źródło
RealTimeIsUniversal
klucz rejestru nadal działa w systemie Windows 8 i 10! Właśnie przetestowałem to sam. Instrukcje korzystania z tej metody są wyjaśniane wiele razy wszędzie, na przykład w tej odpowiedzi .Tutaj powtórzę odpowiedź:
Win+ S,
regedit
, Enter.Przejdź do klucza:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
.Utwórz nową wartość DWORD (32-bit), nazwij ją
RealTimeIsUniversal
.Ustaw jego wartość na
1
.Po wykonaniu tej czynności uruchom ponownie komputer. Po jego ponownym uruchomieniu pozwól systemowi Windows ustawić czas automatycznie (kliknij aktualny czas w zasobniku,
Date and Time Settings
>Set Time Automatically
), tym razem nie będzie z nim bałaganu.źródło
@ jiehanzheng tak, jeśli użyjesz NTP w systemie Windows, zepsuje to zegar. Wygląda na to, że najlepszym obejściem jest uruchomienie NTP w dowolnym stylu * NIX, z którego korzystasz podwójnie, wyłączenie NTP w Windows i przesunięcie przy użyciu dowolnej strefy czasowej, której potrzebujesz. Następnie musisz ręcznie dostosować czas letni za pomocą zmiany strefy czasowej w systemie Windows, ale eh ..
źródło
RealTimeIsUniversal
pracuje dla mnie. Aby go uruchomić, po zastosowaniu wpisu rejestru zamknij system Windows (nie uśpienie ani hibernacja). Uruchom komputer i wejdź do systemu BIOS przed uruchomieniem systemu Windows, zmień czas w systemie BIOS, zapisz, a następnie kontynuuj uruchamianie systemu Windows. Alternatywnie, po wyłączeniu systemu Windows, uruchom system Linux i pozwól synchronizacji czasu wykonać swoją pracę. Jeśli czas jest aktualizowany z poziomu systemu Windows, system Windows w jakiś sposób zaktualizuje nieprawidłowy czas w systemie po ponownym uruchomieniu.źródło
RealTimeIsUniversal pracował dla mnie w systemie Windows 10. A w połowie grudnia 2016 roku działa również w moim systemie Windows 7 Pro, bez konieczności ponownego uruchamiania systemu Linux.
źródło
Możesz po prostu ustawić strefę czasową na cztery godziny.
źródło