Zeitkonflikte bei mehreren Boot-Systemen
Betriebssysteme speichern und rufen die Zeit in der Hardware-Uhr auf Ihrem Motherboard ab, damit sie die Zeit auch dann verfolgen kann, wenn das System nicht mit Strom versorgt wird. Die meisten Betriebssysteme (Linux / Unix / Mac) speichern die Uhrzeit auf der Hardware-Uhr standardmäßig als UTC , obwohl einige Systeme (insbesondere Microsoft Windows) die Uhrzeit auf der Hardware-Uhr als "lokale" Uhrzeit speichern. Dies führt in einem Dual-Boot-System zu Problemen, wenn beide Systeme die Hardware-Uhr unterschiedlich anzeigen.
Der Vorteil der Hardware-Uhr als UTC besteht darin, dass Sie die Hardware-Uhr nicht ändern müssen, wenn Sie zwischen Zeitzonen wechseln oder wenn die Sommerzeit (DST) beginnt oder endet, da UTC keine DST- oder Zeitzonen-Offsets hat.
Die Umstellung von Linux auf die lokale Zeit ist einfacher und zuverlässiger als die Umstellung von Windows auf UTC. Daher verwenden Dual-Boot-Linux- / Windows-Systeme in der Regel die lokale Zeit.
Seit Intrepid (8.10) ist UTC = yes voreingestellt.
Windows UTC verwenden lassen
Hinweis: Diese Methode wurde ursprünglich unter Windows Vista und Server 2008 nicht unterstützt, wurde jedoch mit Vista SP2, Windows 7, Server 2008 R2 und Windows 8 / 8.1 zurückgegeben.
Damit MS Windows die Zeit von der Hardware-Uhr als UTC berechnet.
Erstellen Sie eine Datei mit dem Namen WindowsTimeFixUTC.reg mit dem folgenden Inhalt und doppelklicken Sie darauf, um den Inhalt mit der Registrierung zusammenzuführen:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
Hinweis: Der Windows-Zeitdienst schreibt die Ortszeit unabhängig von der oben angegebenen Registrierungseinstellung beim Herunterfahren weiterhin in die Echtzeituhr. Daher ist es praktisch, den Windows-Zeitdienst mit diesem Befehl zu deaktivieren (wenn die Zeitsynchronisierung unter Windows weiterhin erforderlich ist und Zeit von Drittanbietern verwendet wird) Synchronisierungslösung):
sc config w32time start= disabled
Änderung rückgängig machen
Sie können eine Datei mit folgendem Inhalt erstellen und anschließend darauf doppelklicken, um die ursprünglichen Änderungen wie oben beschrieben zu übernehmen:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=-
Wenn der Windows-Zeitdienst deaktiviert war, aktivieren Sie ihn erneut mit dem folgenden Befehl:
sc config w32time start= demand
Verwenden Sie unter Linux die lokale Zeit
So teilen Sie Ihrem Ubuntu-System mit, dass die Hardware-Uhr auf die lokale Zeit eingestellt ist:
Systeme vor Ubuntu 15.04 (zB Ubuntu 14.04 LTS):
- bearbeiten
/etc/default/rcS
Fügen Sie den folgenden Abschnitt hinzu oder ändern Sie ihn
# Set UTC=yes if your hardware clock is set to UTC (GMT)
UTC=no
Ubuntu 15.04 Systeme und höher (zB Ubuntu 16.04 LTS):
Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus
timedatectl set-local-rtc 1
New-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
Um die BIOS-Uhr in einer systembasierten Version (15.04 und höher) auf die lokale Zeit anstatt auf UTC einzustellen, müssen Sie den
timedatectl
Befehl verwenden. Laut dem Arch Wiki :quelle
Ihre Zeitzone ist Eastern , derzeit EDT (Eastern Daylight Time). EDT ist UTC minus vier Stunden, genau wie der Offset, den Sie erleben.
Wenn dies auf einem Dual-Boot-System geschieht, liegt dies normalerweise daran, dass ein Betriebssystem davon ausgeht, dass die Hardware-Uhr die Ortszeit verfolgt, während das andere Betriebssystem davon ausgeht, dass die Hardware-Uhr die UTC-Zeit verfolgt.
In Ihrem Fall ist Ihre Hardware-Uhr wahrscheinlich auf die Ortszeit eingestellt, und:
Wenn Sie die Zeit im Ubuntu-System nur manuell oder automatisch zurücksetzen würden, wäre dies in Windows falsch. Das ist also keine gute Lösung.
Stattdessen ist es wahrscheinlich die beste Lösung, Ubuntu so zu konfigurieren, dass die Hardware-Uhrzeit als Ortszeit behandelt wird (dann können Sie Ihre Windows-Konfiguration und Ihre Hardware-Uhrzeit in Ruhe lassen).
Bearbeiten Sie dazu
/etc/default/rcS
als root und stellen Sie sicher, dass Folgendes vorhanden istUTC=no
:Drücken Sie Alt+ F2.
Tippen
gksu gedit /etc/default/rcS
und drücken Enter.Du wirst wahrscheinlich folgendes sehen:
UTC=yes
zuUTC=no
. (Oder Sie möchten möglicherweise auch einen Kommentar hinzufügen, indem Sie ihn in eine Art ändernUTC=no # changed to accommodate Windows system
. Alles in einer Zeile nach einem#
Zeichen ist ein Kommentar und dient nur dazu, Ihre Einstellungen besser lesbar zu machen.)UTC=
Linie. Wenn es unkommentiert ist (dh#
am Anfang kein a hat ), ändern Sie es entsprechend. Wenn es kommentiert ist, entfernen Sie das Kommentarzeichen,#
und vergewissern Sie sich, dass darauf stehtUTC=no
.Speichern Sie die Datei und beenden Sie den Texteditor.
Starten Sie den Computer neu, um die Änderungen zu übernehmen, und überprüfen Sie, ob die Uhrzeit jetzt auf beiden Betriebssystemen ordnungsgemäß funktioniert.
Quelle: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time
(Aber das ist sehr allgemein; ich habe diese Antwort geschrieben, um sie speziell auf Ihre Situation zu beziehen, was ein ziemlich verbreitetes Problem ist.)
quelle
Die / etc / rcS-Korrektur funktionierte bei meiner Win7 / Ubuntu 14.04x64-Installation nicht und es wurden auch keine Korrekturen über die Uhr-GUI vorgenommen. Da die Ursache des Problems die BIOS-Zeit im Vergleich zur UTC-Zeit ist und Windows bei der Verwendung von UTC ein Problem darstellt, habe ich nur einen Punkt auf der Karte ausgewählt, der UTC + 0 verwendet (keine Änderung zwischen BIOS- und UTC-Zeit). .
Versuchen Sie, Ihren Standort nach Reykjavik (der Hauptstadt Islands) zu ändern. Voila! Ihre Ubuntu-Zeit ändert sich entsprechend Ihrer BIOS-Zeit.
quelle