Die Uhrzeit ist beim Dual-Boot deaktiviert

267

Dual-Boot-System Windows XP Pro und Ubuntu 12.04.

Ich habe das Bios für die richtige Zeit und Ubuntu für US Eastern Zeit festgelegt. Ubuntu wird hochgefahren und die Zeit wird um -4 Stunden unterbrochen. Wenn ich die Zeit in Ubuntu korrigiere, dann wenn ich in Windows XP starte, wird die Zeit um + 4 Stunden abweichen.

Dies ist eine Neuinstallation von 12.04. Ich hatte dieses Problem nicht, bevor ich Ubuntu neu installiere.

    
Bill Walden 28.07.2012, 19:48

4 Antworten

225

Link

  

Zeitkonflikte mehrerer Boot-Systeme

     

Betriebssysteme speichern und rufen die Uhrzeit in der Hardwareuhr ab   auf Ihrem Motherboard, so dass es die Zeit sogar verfolgen kann   wenn das System keine Stromversorgung hat. Die meisten Betriebssysteme   (Linux / Unix / Mac) speichert die Uhrzeit auf der Hardwareuhr als UTC durch   Standard, obwohl einige Systeme (insbesondere Microsoft Windows) die   Zeit auf der Hardwareuhr als die "lokale" Zeit. Dies verursacht Probleme   in einem Dual-Boot-System, wenn beide Systeme die Hardware-Uhr anzeigen   anders.

     

Der Vorteil der Hardware-Uhr als UTC ist, dass Sie nicht haben   müssen die Hardwareuhr ändern, wenn Sie zwischen den Zeitzonen oder wechseln   wenn die Sommerzeit (DST) beginnt oder endet, wie es die UTC nicht hat   DST oder Zeitzonenversätze.

     

Das Ändern von Linux zur Verwendung der lokalen Zeit ist einfacher und zuverlässiger als   Ändern von Windows zur Verwendung von UTC, so Dual-Boot-Linux / Windows-Systeme neigen   lokale Zeit verwenden.

     

Seit Intrepid (8.10) ist UTC = yes der Standardwert.

     

Windows sollte UTC verwenden

     

Hinweis: Diese Methode wurde ursprünglich nicht von Windows Vista und Server 2008 unterstützt, kam aber mit Vista SP2, Windows 7, Server 2008 R2 zurück   und Windows 8 / 8.1.

     

Um MS Windows die Zeit von der Hardware-Uhr als UTC berechnen zu lassen.

     

Erstellen Sie eine Datei mit dem Namen WindowsTimeFixUTC.reg Folgendes   Inhalt und dann doppelklicken Sie darauf, um den Inhalt mit der   Registrierung:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=dword:00000001
     

Hinweis: Der Windows-Zeitdienst schreibt immer noch lokale Zeit in die RTC, unabhängig von der oben angegebenen Registrierungseinstellung beim Herunterfahren, also ist es praktisch   um den Windows-Zeitdienst mit diesem Befehl zu deaktivieren (wenn die Zeitsynchronisation ist   weiterhin erforderlich, während in Windows eine Drittanbieter-Zeitsynchronisierung verwendet wird   Lösung):

sc config w32time start= disabled
     

Änderung rückgängig machen
Sie können eine Datei mit folgendem erzeugen   Inhalt und dann doppelklicken Sie darauf, um die ursprünglichen Änderungen zusammenzuführen, als   oben:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=-
     

Wenn der Windows-Zeitdienst deaktiviert wurde, aktivieren Sie ihn erneut mit der Taste   Befehl:

sc config w32time start= demand
     

Linux sollte die lokale Zeit verwenden

     

Um Ihrem Ubuntu-System mitzuteilen, dass die Hardware-Uhr auf "lokal" eingestellt ist   Zeit:

     

Pre-Ubuntu 15.04-Systeme (z. B. Ubuntu 14.04 LTS):

     
  1. Bearbeiten /etc/default/rcS
  2.   
  3. 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
    
  4.   

Ubuntu 15.04-Systeme und höher (z. B. Ubuntu 16.04 LTS):

     
  1. Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus

    timedatectl set-local-rtc 1
    
  2.   
    
Eric Carvalho 28.07.2012 20:07
58

Um die BIOS-Uhr in einer systembasierten Version (15.04 und höher) auf die Ortszeit anstatt auf UTC zu setzen, müssen Sie den Befehl timedatectl verwenden. Laut dem Arch Wiki :

  

Sie können den Hardware-Uhrzeitstandard über die Befehlszeile festlegen.   Sie können überprüfen, für was Sie festgelegt haben:

$ timedatectl | grep local
     

Die Hardwareuhr kann abgefragt und mit timedatectl eingestellt werden   Befehl. Verwenden Sie zum Ändern des Hardware-Uhrzeitstandards auf Ortszeit:

# timedatectl set-local-rtc 1
     

Wenn Sie die Hardware-Uhr in UTC wiederherstellen möchten, tun Sie Folgendes:

# timedatectl set-local-rtc 0
    
muru 13.01.2016 04:40
31

Ihre Zeitzone ist Eastern , die derzeit EDT (Eastern Daylight Time) ist. EDT ist UTC minus vier Stunden, genau wie der Offset, den Sie gerade erleben.

Wenn dies auf einem Dual-Boot-System geschieht, ist es normalerweise, weil ein Betriebssystem denkt, dass die Hardwareuhr die lokale Zeit verfolgt, während das andere Betriebssystem denkt, dass die Hardwareuhr UTC verfolgt.

In Ihrem Fall ist Ihre Hardware-Uhr wahrscheinlich auf die lokale Zeit eingestellt und:

  • Windows ist so eingestellt, dass die lokale Zeit verwendet wird, die (in Anbetracht Ihrer Zeiteinstellungen) korrekt ist.
  • Ubuntu ist darauf eingestellt, UTC zu verwenden, was (in Anbetracht Ihrer Zeiteinstellungen) falsch ist.

Wenn Sie die Zeit im Ubuntu-System entweder manuell oder automatisch zurücksetzen , wäre es dann falsch in Windows, das ist also keine gute Lösung.

Stattdessen ist wahrscheinlich die beste Lösung, Ubuntu neu zu konfigurieren, um die Hardware-Uhrzeit als lokale Zeit zu behandeln (dann können Sie Ihre Windows-Konfiguration und die Uhrzeit Ihrer Hardware alleine lassen).

>

Bearbeiten Sie dazu /etc/default/rcS als root und stellen Sie sicher, dass UTC=no :

vorhanden ist
  1. Drücken Sie Alt + F2 .

  2. Geben Sie gksu gedit /etc/default/rcS ein und drücken Sie Geben Sie ein.

  3. Sie werden das wahrscheinlich sehen:

    # assume that the BIOS clock is set to UTC time (recommended)
    UTC=yes
    
    • Wenn Sie dies tun, ändern Sie UTC=yes in UTC=no . (Oder Sie möchten einen Kommentar hinzufügen, indem Sie den Namen in UTC=no # changed to accommodate Windows system ändern. Alles in einer Zeile nach einem # -Zeichen ist ein Kommentar und dient nur dazu, Ihre Einstellungen lesbarer zu machen.)
    • Wenn Sie dies nicht tun, suchen Sie nach einer UTC= -Zeile. Wenn es unkommentiert ist (d. H. Am Anfang kein # hat), ändern Sie es entsprechend. Wenn es kommentiert ist, entfernen Sie das Kommentarzeichen, indem Sie das führende # entfernen und sicherstellen, dass UTC=no angezeigt wird.
  4. Speichern Sie die Datei und beenden Sie den Texteditor.

  5. Starten Sie neu, um Ihre Änderungen zu übernehmen, und überprüfen Sie, ob die Zeit jetzt auf beiden Betriebssystemen ordnungsgemäß funktioniert.

Quelle: Link

(Aber das ist sehr allgemein; ich habe diese Antwort speziell für Ihre Situation geschrieben, was ein etwas allgemeines Problem ist.)

    
Eliah Kagan 28.07.2012 20:16
12

Der / etc / rcS-Fix funktionierte nicht auf meiner Win7 / Ubuntu 14.04x64-Installation, noch wurden irgendwelche Korrekturen über die Uhr-GUI vorgenommen. Da der Grund des Problems BIOS-Zeit VS UTC-Zeit ist, und Windows ist ein Schmerz in den Hintern, wenn es um UTC kommt, wählte ich nur einen Punkt auf der Karte, die UTC + 0 verwendet (keine Änderung zwischen BIOS und UTC-Zeit) .

Versuchen Sie, Ihren Standort nach Reykjavik (der Hauptstadt von Island) zu ändern. Voila! Ihre Ubuntu-Zeit ändert sich entsprechend Ihrer BIOS-Zeit.

    
OpensourceFool 03.07.2014 19:49

Tags und Links