Erzwingen Sie, dass Windows 8 UTC verwendet, wenn Sie mit der BIOS-Uhr arbeiten

18

Ich habe Arch Linux + Windows 8 auf meinem Laptop. In früheren Versionen von Windows befindet sich ein DWORD in der Registrierung ( HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal ), die zwischen Ortszeit und UTC umschaltet, aber dies scheint in Windows 8 nicht mehr zu funktionieren.

In Windows wird jetzt die UTC-Zeit angezeigt, da das BIOS die aktuelle UTC-Zeit angibt. Nach dem Neustart von Arch Linux wird die Uhrzeit auf localtime-0400 eingestellt, da Arch der Meinung ist, dass das BIOS die richtige UTC-Zeit hat.

Ich möchte Arch Linux nicht die Ortszeit verwenden lassen. Gibt es unter dieser Voraussetzung eine mögliche Lösung?

jiehanzheng
quelle
1
Der RealTimeIsUniversal-Schlüssel hat bei mir gut funktioniert und Arch Linux auch doppelt gebootet.
numbers1311407

Antworten:

3

RealTimeIsUniversal ist wirklich fehlerhaft und nicht eine offiziell empfohlene Lösung (vielleicht haben sie sie deshalb in Win8 deaktiviert?) Die IBM PC-Echtzeituhr sollte in UT ausgeführt werden und eine Antwort von Raymond Chen hier: Warum hält Windows die BIOS-Uhr auf der Ortszeit? . Zum jetzigen Zeitpunkt glaube ich nicht, dass es eine richtige Lösung dafür gibt.

Karan
quelle
5
Buggy? Ich hatte nie Probleme damit, und es ist wirklich die einzige vernünftige Lösung, Windows zu zwingen, eine UTC-Systemuhr zu verwenden. und der Schlüssel ist nicht deaktiviert in win8. Die wirkliche Lösung besteht darin, den Registrierungsschlüssel festzulegen, die Zeitsynchronisierung von Windows zu deaktivieren und die Synchronisierung unter Linux durchzuführen, wenn Sie dort häufig genug booten.
flying sheep
1
@flyingsheep Im Laufe der Jahre wurden einige Hotfixes veröffentlicht, siehe Aktueller Supportstatus in Windows auf cl.cam.ac.uk/~mgk25/mswish/ut-rtc.html
Stijn
@Stijn Toller Link, ich denke, du solltest ihn zu einer Antwort machen, um die Sichtbarkeit zu erhöhen.
Marc.2377
15

Der standardmäßige Windows-Zeitdienst schreibt beim Herunterfahren immer die lokale Zeit in die Hardwareuhr, unabhängig davon, was die Registrierung über die Echtzeit in UTC sagt. Außerhalb dieser Einschränkung wird Windows die Hardware-Zeituhr korrekt behandeln, wenn die Registrierung korrekt eingestellt ist. Versuche dies:

  1. Wenn die Zeit abgelaufen ist, weil Windows versucht hat, UTC zu verwenden, starten Sie Windows und stellen Sie die Zeit wie gewohnt ein (richtige Zeitzone, kein Regedit, Windows-Zeitdienst aktiviert, kürzlich synchronisiert usw.)
  2. Mach den Regedit, den du schon erwähnt hast
  3. Synchronisieren Sie die Zeit w32tm /config /update
  4. Deaktivieren Sie den Windows-Zeitdienst sc config w32time start= disabled
  5. Installieren Sie einen NTP-Client eines Drittanbieters
  6. Stellen Sie sicher, dass es mit einem Neustart funktioniert
JumperPunk
quelle
1
Stellen Sie dies einfach selbst ein, nachdem Windows die Uhr bei jedem Herunterfahren eingestellt hat. Es wurde die folgende NTP-Software für Windows gefunden, die sehr einfach einzurichten und zu konfigurieren ist. meinbergglobal.com/english/sw/ntp.htm
Dracs
Diese Software scheint eine Neuverpackung der offiziellen NTP-Distribution zu sein, mit einigen Extras. Wie auch immer, ich habe es benutzt und fand es auch zum Arbeiten.
David Z
10

RealTimeIsUniversal Registrierungsschlüssel funktioniert noch in Windows 8 und 10! Ich habe es einfach selbst getestet. Die Anweisungen zur Verwendung dieser Methode werden häufig in allen Abschnitten erläutert, beispielsweise in diese Antwort .

Ich werde die Antwort hier wiederholen:

  1. Sieg + S , regedit, Eingeben .

  2. Navigieren Sie zu der Taste: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation.

  3. Erstellen Sie einen neuen DWORD-Wert (32-Bit) und geben Sie ihm einen Namen RealTimeIsUniversal.

  4. Setzen Sie seinen Wert auf 1.

Starten Sie danach einfach Ihren Computer neu. Nachdem es wieder läuft, lassen Sie Windows die Zeit automatisch einstellen (klicken Sie auf die aktuelle Zeit in der Taskleiste, Date and Time Settings & gt; Set Time Automatically ), diesmal wird es nicht damit herumspielen.

TranslucentCloud
quelle
0

@ Jiehanzheng ja, wenn Sie NTP in Windows verwenden, wird es die Uhr durcheinander bringen. Klingt so, als ob die beste Lösung darin besteht, NTP in einer beliebigen * NIX-Variante auszuführen, die Sie beim Dual-Booten verwenden, NTP in Windows zu deaktivieren und den Versatz in einer beliebigen Zeitzone vorzunehmen. Dann müssen Sie nur die Sommerzeit manuell mit einer Zeitzonenverschiebung in Windows anpassen, aber eh ..

wajeemba
quelle
0

RealTimeIsUniversal funktioniert bei mir. Damit es funktioniert, nachdem Sie den Registrierungseintrag angewendet haben, ausschalten Windows (nicht Ruhezustand oder Ruhezustand). Bootmaschine & amp; Rufen Sie das BIOS vor dem Booten von Windows auf, ändern Sie die Uhrzeit im BIOS, speichern Sie und fahren Sie mit dem Booten von Windows fort. Alternativ können Sie nach dem Herunterfahren von Windows Linux & amp; Lassen Sie die Zeitsynchronisation ihren Job machen. Wenn die Uhrzeit in Windows aktualisiert wird, aktualisiert Windows nach einem Neustart auf irgendeine Weise eine falsche Uhrzeit auf dem System.

user416162
quelle
1
Könnten Sie auf Quellen verlinken, die RealTimeIsUniversal erklären? Ich wusste nicht, was es war, bis Sie es erwähnt haben, und aus einer Reihe von Ergebnissen geht hervor, dass es eine Reihe von möglichen negativen Nebenwirkungen hat.
killermist
-1

RealTimeIsUniversal hat für mich unter Windows 10 funktioniert. Und Mitte Dezember 2016 funktioniert es auch für Windows 7 Pro, ohne dass ein Neustart in Linux erforderlich ist.

Kevin O'Gorman
quelle
-3

Sie können Ihre Zeitzone auf vier Stunden einstellen.

enter image description here

Caleb Jares
quelle
Problemumgehung ... aber die Hardware- und Systemuhr wird erneut durcheinander gebracht, wenn ich NTP (Internet Time) verwende, oder?
jiehanzheng