Clock time is off on dual boot

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP








up vote
270
down vote

favorite
150












Dual boot system Windows XP Pro and Ubuntu 12.04.



I have the bios set for the correct time and Ubuntu set for US Eastern time. Ubuntu will boot up and the time will be off by -4 hours. If I correct the time in Ubuntu then when I boot up in Windows XP the time will be off by + 4 hours.



This is a fresh install of 12.04. I did not have this problem before reinstalling Ubuntu.







share|improve this question


























    up vote
    270
    down vote

    favorite
    150












    Dual boot system Windows XP Pro and Ubuntu 12.04.



    I have the bios set for the correct time and Ubuntu set for US Eastern time. Ubuntu will boot up and the time will be off by -4 hours. If I correct the time in Ubuntu then when I boot up in Windows XP the time will be off by + 4 hours.



    This is a fresh install of 12.04. I did not have this problem before reinstalling Ubuntu.







    share|improve this question
























      up vote
      270
      down vote

      favorite
      150









      up vote
      270
      down vote

      favorite
      150






      150





      Dual boot system Windows XP Pro and Ubuntu 12.04.



      I have the bios set for the correct time and Ubuntu set for US Eastern time. Ubuntu will boot up and the time will be off by -4 hours. If I correct the time in Ubuntu then when I boot up in Windows XP the time will be off by + 4 hours.



      This is a fresh install of 12.04. I did not have this problem before reinstalling Ubuntu.







      share|improve this question














      Dual boot system Windows XP Pro and Ubuntu 12.04.



      I have the bios set for the correct time and Ubuntu set for US Eastern time. Ubuntu will boot up and the time will be off by -4 hours. If I correct the time in Ubuntu then when I boot up in Windows XP the time will be off by + 4 hours.



      This is a fresh install of 12.04. I did not have this problem before reinstalling Ubuntu.









      share|improve this question













      share|improve this question




      share|improve this question








      edited Jan 2 '17 at 16:30









      zahypeti

      347




      347










      asked Jul 28 '12 at 17:48









      Bill Walden

      1,351393




      1,351393




















          4 Answers
          4






          active

          oldest

          votes

















          up vote
          227
          down vote













          https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts




          Multiple Boot Systems Time Conflicts



          Operating systems store and retrieve the time in the hardware clock
          located on your motherboard so that it can keep track of the time even
          when the system does not have power. Most operating systems
          (Linux/Unix/Mac) store the time on the hardware clock as UTC by
          default, though some systems (notably Microsoft Windows) store the
          time on the hardware clock as the 'local' time. This causes problems
          in a dual boot system if both systems view the hardware clock
          differently.



          The advantage of having the hardware clock as UTC is that you don't
          need to change the hardware clock when moving between timezones or
          when Daylight Savings Time (DST) begins or ends as UTC does not have
          DST or timezone offsets.



          Changing Linux to use local time is easier and more reliable than
          changing Windows to use UTC, so dual-boot Linux/Windows systems tend
          to use local time.



          Since Intrepid (8.10), UTC=yes is default.



          Make Windows use UTC



          Note: This method was not initially supported on Windows Vista and Server 2008, but came back with Vista SP2, Windows 7, Server 2008 R2
          and Windows 8/8.1.



          To make MS Windows calculate the time from the hardware clock as UTC.



          Create a file named WindowsTimeFixUTC.reg with the following
          contents and then double click on it to merge the contents with the
          registry:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=dword:00000001


          Note: Windows Time service will still write local time to the RTC regardless of the registry setting above on shutdown, so it is handy
          to disable Windows Time service with this command (if time sync is
          still required while in Windows use any third-party time sync
          solution):



          sc config w32time start= disabled


          Reversing the change
          You can create a file with the following
          contents and then double-click it to merge in the original changes, as
          above:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=-


          If Windows Time service was disabled, enable it again with the
          command:



          sc config w32time start= demand


          Make Linux use 'Local' time



          To tell your Ubuntu system that the hardware clock is set to 'local'
          time:



          Pre-Ubuntu 15.04 systems (e.g. Ubuntu 14.04 LTS):



          1. edit /etc/default/rcS


          2. add or change the following section



            # Set UTC=yes if your hardware clock is set to UTC (GMT)
            UTC=no


          Ubuntu 15.04 systems and above (e.g. Ubuntu 16.04 LTS):




          1. open a terminal and execute the following command



            timedatectl set-local-rtc 1







          share|improve this answer


















          • 38




            Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
            – iono
            Dec 9 '13 at 7:22






          • 18




            @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
            – Jon Hanna
            Apr 22 '14 at 13:44






          • 7




            @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
            – Shahriyar Imanov
            May 15 '14 at 19:19






          • 3




            In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
            – Anatoly Mironov
            Jan 14 '15 at 9:29







          • 3




            For those skimming the text, you only have to change settings in one of the OSes, not both.
            – Alexander Revo
            Aug 8 '17 at 19:29

















          up vote
          59
          down vote













          To set the BIOS clock to local time instead of UTC in a systemd-based version (15.04 and above), you will have to use the timedatectl command. According to the Arch Wiki:




          You can set the hardware clock time standard through the command line.
          You can check what you have set to use by:



          $ timedatectl | grep local


          The hardware clock can be queried and set with the timedatectl
          command. To change the hardware clock time standard to localtime, use:



          # timedatectl set-local-rtc 1


          If you want to revert to the hardware clock being in UTC, do:



          # timedatectl set-local-rtc 0






          share|improve this answer
















          • 4




            On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
            – user1050755
            Oct 21 '16 at 19:25










          • @user1050755 is that before, after, or instead of the timedatectl command?
            – nasch
            Jan 16 at 0:45

















          up vote
          32
          down vote













          Your time zone is Eastern, which is currently EDT (Eastern Daylight Time). EDT is UTC minus four hours, the same as the offset you're experiencing.



          When this happens on a dual-boot system, it's usually because one operating system thinks the hardware clock tracks local time, while the other operating system thinks the hardware clock tracks UTC.



          In your case, your hardware clock is probably set to the local time, and:



          • Windows is set to use local time, which (given your time settings) is correct.

          • Ubuntu is set to use UTC, which (given your time settings) is incorrect.

          If you were to just reset the time in the Ubuntu system, either manually or automatically, it would then be wrong in Windows, so that's not a good solution.



          Instead, the best solution is probably to reconfigure Ubuntu to treat the hardware clock time as local time (then you can leave your Windows configuration, and your hardware clock time, alone).



          To do this, edit /etc/default/rcS as root and make sure it has UTC=no:



          1. Press Alt+F2.


          2. Type gksu gedit /etc/default/rcS and press Enter.



          3. You'll probably see this:



            # assume that the BIOS clock is set to UTC time (recommended)
            UTC=yes


            • If you do, change UTC=yes to UTC=no. (Or you might want to add a comment too, by changing it to something like UTC=no # changed to accommodate Windows system. Everything on a line after a # character is a comment, and is there just to make your settings more human-readable.)

            • If you don't, look for any UTC= line. If it's uncommented (i.e., doesn't have a # at the beginning), change it accordingly. If it is commented, uncomment it by removing the leading # and make sure it says UTC=no.


          4. Save the file and quit the text editor.


          5. Reboot to apply your changes and check that the time is working properly now on both operating systems.


          Source: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time



          (But that is very general; I have written this answer to apply specifically to your situation, which is a somewhat common problem.)






          share|improve this answer






















          • Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
            – starbeamrainbowlabs
            Jun 20 '16 at 20:03











          • This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
            – Przemek D
            Apr 18 at 8:03

















          up vote
          12
          down vote













          The /etc/rcS fix did not work on my Win7 / Ubuntu 14.04x64 installation, nor did any fixes through the clock GUI. Because the root of the problem is BIOS time VS UTC time, and Windows is a pain in the butt when it comes to using UTC, I just picked a point on the map that uses UTC+0 (no change between BIOS and UTC time).



          Try changing your location to Reykjavik (the capital of Iceland). Voila! Your Ubuntu time will change to match your BIOS time.






          share|improve this answer




















          • Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
            – Pale Blue Dot
            Mar 10 '15 at 9:05









          protected by Community♦ Apr 18 '14 at 15:49



          Thank you for your interest in this question.
          Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



          Would you like to answer one of these unanswered questions instead?














          4 Answers
          4






          active

          oldest

          votes








          4 Answers
          4






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          227
          down vote













          https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts




          Multiple Boot Systems Time Conflicts



          Operating systems store and retrieve the time in the hardware clock
          located on your motherboard so that it can keep track of the time even
          when the system does not have power. Most operating systems
          (Linux/Unix/Mac) store the time on the hardware clock as UTC by
          default, though some systems (notably Microsoft Windows) store the
          time on the hardware clock as the 'local' time. This causes problems
          in a dual boot system if both systems view the hardware clock
          differently.



          The advantage of having the hardware clock as UTC is that you don't
          need to change the hardware clock when moving between timezones or
          when Daylight Savings Time (DST) begins or ends as UTC does not have
          DST or timezone offsets.



          Changing Linux to use local time is easier and more reliable than
          changing Windows to use UTC, so dual-boot Linux/Windows systems tend
          to use local time.



          Since Intrepid (8.10), UTC=yes is default.



          Make Windows use UTC



          Note: This method was not initially supported on Windows Vista and Server 2008, but came back with Vista SP2, Windows 7, Server 2008 R2
          and Windows 8/8.1.



          To make MS Windows calculate the time from the hardware clock as UTC.



          Create a file named WindowsTimeFixUTC.reg with the following
          contents and then double click on it to merge the contents with the
          registry:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=dword:00000001


          Note: Windows Time service will still write local time to the RTC regardless of the registry setting above on shutdown, so it is handy
          to disable Windows Time service with this command (if time sync is
          still required while in Windows use any third-party time sync
          solution):



          sc config w32time start= disabled


          Reversing the change
          You can create a file with the following
          contents and then double-click it to merge in the original changes, as
          above:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=-


          If Windows Time service was disabled, enable it again with the
          command:



          sc config w32time start= demand


          Make Linux use 'Local' time



          To tell your Ubuntu system that the hardware clock is set to 'local'
          time:



          Pre-Ubuntu 15.04 systems (e.g. Ubuntu 14.04 LTS):



          1. edit /etc/default/rcS


          2. add or change the following section



            # Set UTC=yes if your hardware clock is set to UTC (GMT)
            UTC=no


          Ubuntu 15.04 systems and above (e.g. Ubuntu 16.04 LTS):




          1. open a terminal and execute the following command



            timedatectl set-local-rtc 1







          share|improve this answer


















          • 38




            Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
            – iono
            Dec 9 '13 at 7:22






          • 18




            @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
            – Jon Hanna
            Apr 22 '14 at 13:44






          • 7




            @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
            – Shahriyar Imanov
            May 15 '14 at 19:19






          • 3




            In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
            – Anatoly Mironov
            Jan 14 '15 at 9:29







          • 3




            For those skimming the text, you only have to change settings in one of the OSes, not both.
            – Alexander Revo
            Aug 8 '17 at 19:29














          up vote
          227
          down vote













          https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts




          Multiple Boot Systems Time Conflicts



          Operating systems store and retrieve the time in the hardware clock
          located on your motherboard so that it can keep track of the time even
          when the system does not have power. Most operating systems
          (Linux/Unix/Mac) store the time on the hardware clock as UTC by
          default, though some systems (notably Microsoft Windows) store the
          time on the hardware clock as the 'local' time. This causes problems
          in a dual boot system if both systems view the hardware clock
          differently.



          The advantage of having the hardware clock as UTC is that you don't
          need to change the hardware clock when moving between timezones or
          when Daylight Savings Time (DST) begins or ends as UTC does not have
          DST or timezone offsets.



          Changing Linux to use local time is easier and more reliable than
          changing Windows to use UTC, so dual-boot Linux/Windows systems tend
          to use local time.



          Since Intrepid (8.10), UTC=yes is default.



          Make Windows use UTC



          Note: This method was not initially supported on Windows Vista and Server 2008, but came back with Vista SP2, Windows 7, Server 2008 R2
          and Windows 8/8.1.



          To make MS Windows calculate the time from the hardware clock as UTC.



          Create a file named WindowsTimeFixUTC.reg with the following
          contents and then double click on it to merge the contents with the
          registry:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=dword:00000001


          Note: Windows Time service will still write local time to the RTC regardless of the registry setting above on shutdown, so it is handy
          to disable Windows Time service with this command (if time sync is
          still required while in Windows use any third-party time sync
          solution):



          sc config w32time start= disabled


          Reversing the change
          You can create a file with the following
          contents and then double-click it to merge in the original changes, as
          above:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=-


          If Windows Time service was disabled, enable it again with the
          command:



          sc config w32time start= demand


          Make Linux use 'Local' time



          To tell your Ubuntu system that the hardware clock is set to 'local'
          time:



          Pre-Ubuntu 15.04 systems (e.g. Ubuntu 14.04 LTS):



          1. edit /etc/default/rcS


          2. add or change the following section



            # Set UTC=yes if your hardware clock is set to UTC (GMT)
            UTC=no


          Ubuntu 15.04 systems and above (e.g. Ubuntu 16.04 LTS):




          1. open a terminal and execute the following command



            timedatectl set-local-rtc 1







          share|improve this answer


















          • 38




            Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
            – iono
            Dec 9 '13 at 7:22






          • 18




            @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
            – Jon Hanna
            Apr 22 '14 at 13:44






          • 7




            @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
            – Shahriyar Imanov
            May 15 '14 at 19:19






          • 3




            In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
            – Anatoly Mironov
            Jan 14 '15 at 9:29







          • 3




            For those skimming the text, you only have to change settings in one of the OSes, not both.
            – Alexander Revo
            Aug 8 '17 at 19:29












          up vote
          227
          down vote










          up vote
          227
          down vote









          https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts




          Multiple Boot Systems Time Conflicts



          Operating systems store and retrieve the time in the hardware clock
          located on your motherboard so that it can keep track of the time even
          when the system does not have power. Most operating systems
          (Linux/Unix/Mac) store the time on the hardware clock as UTC by
          default, though some systems (notably Microsoft Windows) store the
          time on the hardware clock as the 'local' time. This causes problems
          in a dual boot system if both systems view the hardware clock
          differently.



          The advantage of having the hardware clock as UTC is that you don't
          need to change the hardware clock when moving between timezones or
          when Daylight Savings Time (DST) begins or ends as UTC does not have
          DST or timezone offsets.



          Changing Linux to use local time is easier and more reliable than
          changing Windows to use UTC, so dual-boot Linux/Windows systems tend
          to use local time.



          Since Intrepid (8.10), UTC=yes is default.



          Make Windows use UTC



          Note: This method was not initially supported on Windows Vista and Server 2008, but came back with Vista SP2, Windows 7, Server 2008 R2
          and Windows 8/8.1.



          To make MS Windows calculate the time from the hardware clock as UTC.



          Create a file named WindowsTimeFixUTC.reg with the following
          contents and then double click on it to merge the contents with the
          registry:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=dword:00000001


          Note: Windows Time service will still write local time to the RTC regardless of the registry setting above on shutdown, so it is handy
          to disable Windows Time service with this command (if time sync is
          still required while in Windows use any third-party time sync
          solution):



          sc config w32time start= disabled


          Reversing the change
          You can create a file with the following
          contents and then double-click it to merge in the original changes, as
          above:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=-


          If Windows Time service was disabled, enable it again with the
          command:



          sc config w32time start= demand


          Make Linux use 'Local' time



          To tell your Ubuntu system that the hardware clock is set to 'local'
          time:



          Pre-Ubuntu 15.04 systems (e.g. Ubuntu 14.04 LTS):



          1. edit /etc/default/rcS


          2. add or change the following section



            # Set UTC=yes if your hardware clock is set to UTC (GMT)
            UTC=no


          Ubuntu 15.04 systems and above (e.g. Ubuntu 16.04 LTS):




          1. open a terminal and execute the following command



            timedatectl set-local-rtc 1







          share|improve this answer














          https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts




          Multiple Boot Systems Time Conflicts



          Operating systems store and retrieve the time in the hardware clock
          located on your motherboard so that it can keep track of the time even
          when the system does not have power. Most operating systems
          (Linux/Unix/Mac) store the time on the hardware clock as UTC by
          default, though some systems (notably Microsoft Windows) store the
          time on the hardware clock as the 'local' time. This causes problems
          in a dual boot system if both systems view the hardware clock
          differently.



          The advantage of having the hardware clock as UTC is that you don't
          need to change the hardware clock when moving between timezones or
          when Daylight Savings Time (DST) begins or ends as UTC does not have
          DST or timezone offsets.



          Changing Linux to use local time is easier and more reliable than
          changing Windows to use UTC, so dual-boot Linux/Windows systems tend
          to use local time.



          Since Intrepid (8.10), UTC=yes is default.



          Make Windows use UTC



          Note: This method was not initially supported on Windows Vista and Server 2008, but came back with Vista SP2, Windows 7, Server 2008 R2
          and Windows 8/8.1.



          To make MS Windows calculate the time from the hardware clock as UTC.



          Create a file named WindowsTimeFixUTC.reg with the following
          contents and then double click on it to merge the contents with the
          registry:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=dword:00000001


          Note: Windows Time service will still write local time to the RTC regardless of the registry setting above on shutdown, so it is handy
          to disable Windows Time service with this command (if time sync is
          still required while in Windows use any third-party time sync
          solution):



          sc config w32time start= disabled


          Reversing the change
          You can create a file with the following
          contents and then double-click it to merge in the original changes, as
          above:



          Windows Registry Editor Version 5.00
          [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]
          "RealTimeIsUniversal"=-


          If Windows Time service was disabled, enable it again with the
          command:



          sc config w32time start= demand


          Make Linux use 'Local' time



          To tell your Ubuntu system that the hardware clock is set to 'local'
          time:



          Pre-Ubuntu 15.04 systems (e.g. Ubuntu 14.04 LTS):



          1. edit /etc/default/rcS


          2. add or change the following section



            # Set UTC=yes if your hardware clock is set to UTC (GMT)
            UTC=no


          Ubuntu 15.04 systems and above (e.g. Ubuntu 16.04 LTS):




          1. open a terminal and execute the following command



            timedatectl set-local-rtc 1








          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Feb 22 '17 at 3:51









          muru

          129k19271460




          129k19271460










          answered Jul 28 '12 at 18:07









          Eric Carvalho

          39.7k17108142




          39.7k17108142







          • 38




            Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
            – iono
            Dec 9 '13 at 7:22






          • 18




            @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
            – Jon Hanna
            Apr 22 '14 at 13:44






          • 7




            @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
            – Shahriyar Imanov
            May 15 '14 at 19:19






          • 3




            In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
            – Anatoly Mironov
            Jan 14 '15 at 9:29







          • 3




            For those skimming the text, you only have to change settings in one of the OSes, not both.
            – Alexander Revo
            Aug 8 '17 at 19:29












          • 38




            Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
            – iono
            Dec 9 '13 at 7:22






          • 18




            @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
            – Jon Hanna
            Apr 22 '14 at 13:44






          • 7




            @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
            – Shahriyar Imanov
            May 15 '14 at 19:19






          • 3




            In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
            – Anatoly Mironov
            Jan 14 '15 at 9:29







          • 3




            For those skimming the text, you only have to change settings in one of the OSes, not both.
            – Alexander Revo
            Aug 8 '17 at 19:29







          38




          38




          Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
          – iono
          Dec 9 '13 at 7:22




          Oh lord. I can't believe they were dumb enough to use local time on a hardware clock. Why would you ever, ever do that?
          – iono
          Dec 9 '13 at 7:22




          18




          18




          @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
          – Jon Hanna
          Apr 22 '14 at 13:44




          @twome because since there wasn't much in the way of networking in the early days of MS-DOS, and it wouldn't have been common to move a PC so far that it moved timezones. (And yeah, even considering that history, it was still not the best move).
          – Jon Hanna
          Apr 22 '14 at 13:44




          7




          7




          @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
          – Shahriyar Imanov
          May 15 '14 at 19:19




          @twome although I agree with you re hardware clock staying as Universal, since it doesn't keep timezone information, there are few problems with that: A) BIOS/UEFI have various features such as auto-wake up/sleep timers, where you set times for those triggers. It'd be weird to set those times in UTC - at least for average user. B) As Jon said above, backward compatibility reasons.
          – Shahriyar Imanov
          May 15 '14 at 19:19




          3




          3




          In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
          – Anatoly Mironov
          Jan 14 '15 at 9:29





          In Windows PowerShell run this command to update the above mentioned registry property: New-ItemProperty -Path HKLM:SYSTEMCurrentControlSetControlTimeZoneInformation -Name RealTimeIsUniversal -PropertyType DWord -Value 00000001
          – Anatoly Mironov
          Jan 14 '15 at 9:29





          3




          3




          For those skimming the text, you only have to change settings in one of the OSes, not both.
          – Alexander Revo
          Aug 8 '17 at 19:29




          For those skimming the text, you only have to change settings in one of the OSes, not both.
          – Alexander Revo
          Aug 8 '17 at 19:29












          up vote
          59
          down vote













          To set the BIOS clock to local time instead of UTC in a systemd-based version (15.04 and above), you will have to use the timedatectl command. According to the Arch Wiki:




          You can set the hardware clock time standard through the command line.
          You can check what you have set to use by:



          $ timedatectl | grep local


          The hardware clock can be queried and set with the timedatectl
          command. To change the hardware clock time standard to localtime, use:



          # timedatectl set-local-rtc 1


          If you want to revert to the hardware clock being in UTC, do:



          # timedatectl set-local-rtc 0






          share|improve this answer
















          • 4




            On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
            – user1050755
            Oct 21 '16 at 19:25










          • @user1050755 is that before, after, or instead of the timedatectl command?
            – nasch
            Jan 16 at 0:45














          up vote
          59
          down vote













          To set the BIOS clock to local time instead of UTC in a systemd-based version (15.04 and above), you will have to use the timedatectl command. According to the Arch Wiki:




          You can set the hardware clock time standard through the command line.
          You can check what you have set to use by:



          $ timedatectl | grep local


          The hardware clock can be queried and set with the timedatectl
          command. To change the hardware clock time standard to localtime, use:



          # timedatectl set-local-rtc 1


          If you want to revert to the hardware clock being in UTC, do:



          # timedatectl set-local-rtc 0






          share|improve this answer
















          • 4




            On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
            – user1050755
            Oct 21 '16 at 19:25










          • @user1050755 is that before, after, or instead of the timedatectl command?
            – nasch
            Jan 16 at 0:45












          up vote
          59
          down vote










          up vote
          59
          down vote









          To set the BIOS clock to local time instead of UTC in a systemd-based version (15.04 and above), you will have to use the timedatectl command. According to the Arch Wiki:




          You can set the hardware clock time standard through the command line.
          You can check what you have set to use by:



          $ timedatectl | grep local


          The hardware clock can be queried and set with the timedatectl
          command. To change the hardware clock time standard to localtime, use:



          # timedatectl set-local-rtc 1


          If you want to revert to the hardware clock being in UTC, do:



          # timedatectl set-local-rtc 0






          share|improve this answer












          To set the BIOS clock to local time instead of UTC in a systemd-based version (15.04 and above), you will have to use the timedatectl command. According to the Arch Wiki:




          You can set the hardware clock time standard through the command line.
          You can check what you have set to use by:



          $ timedatectl | grep local


          The hardware clock can be queried and set with the timedatectl
          command. To change the hardware clock time standard to localtime, use:



          # timedatectl set-local-rtc 1


          If you want to revert to the hardware clock being in UTC, do:



          # timedatectl set-local-rtc 0







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jan 13 '16 at 3:40









          muru

          129k19271460




          129k19271460







          • 4




            On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
            – user1050755
            Oct 21 '16 at 19:25










          • @user1050755 is that before, after, or instead of the timedatectl command?
            – nasch
            Jan 16 at 0:45












          • 4




            On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
            – user1050755
            Oct 21 '16 at 19:25










          • @user1050755 is that before, after, or instead of the timedatectl command?
            – nasch
            Jan 16 at 0:45







          4




          4




          On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
          – user1050755
          Oct 21 '16 at 19:25




          On Ubuntu 16.10 it helped to do "hwclock --systohc --localtime". This writes the "local part" to /etc/adjtime and thereby makes it permanent.
          – user1050755
          Oct 21 '16 at 19:25












          @user1050755 is that before, after, or instead of the timedatectl command?
          – nasch
          Jan 16 at 0:45




          @user1050755 is that before, after, or instead of the timedatectl command?
          – nasch
          Jan 16 at 0:45










          up vote
          32
          down vote













          Your time zone is Eastern, which is currently EDT (Eastern Daylight Time). EDT is UTC minus four hours, the same as the offset you're experiencing.



          When this happens on a dual-boot system, it's usually because one operating system thinks the hardware clock tracks local time, while the other operating system thinks the hardware clock tracks UTC.



          In your case, your hardware clock is probably set to the local time, and:



          • Windows is set to use local time, which (given your time settings) is correct.

          • Ubuntu is set to use UTC, which (given your time settings) is incorrect.

          If you were to just reset the time in the Ubuntu system, either manually or automatically, it would then be wrong in Windows, so that's not a good solution.



          Instead, the best solution is probably to reconfigure Ubuntu to treat the hardware clock time as local time (then you can leave your Windows configuration, and your hardware clock time, alone).



          To do this, edit /etc/default/rcS as root and make sure it has UTC=no:



          1. Press Alt+F2.


          2. Type gksu gedit /etc/default/rcS and press Enter.



          3. You'll probably see this:



            # assume that the BIOS clock is set to UTC time (recommended)
            UTC=yes


            • If you do, change UTC=yes to UTC=no. (Or you might want to add a comment too, by changing it to something like UTC=no # changed to accommodate Windows system. Everything on a line after a # character is a comment, and is there just to make your settings more human-readable.)

            • If you don't, look for any UTC= line. If it's uncommented (i.e., doesn't have a # at the beginning), change it accordingly. If it is commented, uncomment it by removing the leading # and make sure it says UTC=no.


          4. Save the file and quit the text editor.


          5. Reboot to apply your changes and check that the time is working properly now on both operating systems.


          Source: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time



          (But that is very general; I have written this answer to apply specifically to your situation, which is a somewhat common problem.)






          share|improve this answer






















          • Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
            – starbeamrainbowlabs
            Jun 20 '16 at 20:03











          • This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
            – Przemek D
            Apr 18 at 8:03














          up vote
          32
          down vote













          Your time zone is Eastern, which is currently EDT (Eastern Daylight Time). EDT is UTC minus four hours, the same as the offset you're experiencing.



          When this happens on a dual-boot system, it's usually because one operating system thinks the hardware clock tracks local time, while the other operating system thinks the hardware clock tracks UTC.



          In your case, your hardware clock is probably set to the local time, and:



          • Windows is set to use local time, which (given your time settings) is correct.

          • Ubuntu is set to use UTC, which (given your time settings) is incorrect.

          If you were to just reset the time in the Ubuntu system, either manually or automatically, it would then be wrong in Windows, so that's not a good solution.



          Instead, the best solution is probably to reconfigure Ubuntu to treat the hardware clock time as local time (then you can leave your Windows configuration, and your hardware clock time, alone).



          To do this, edit /etc/default/rcS as root and make sure it has UTC=no:



          1. Press Alt+F2.


          2. Type gksu gedit /etc/default/rcS and press Enter.



          3. You'll probably see this:



            # assume that the BIOS clock is set to UTC time (recommended)
            UTC=yes


            • If you do, change UTC=yes to UTC=no. (Or you might want to add a comment too, by changing it to something like UTC=no # changed to accommodate Windows system. Everything on a line after a # character is a comment, and is there just to make your settings more human-readable.)

            • If you don't, look for any UTC= line. If it's uncommented (i.e., doesn't have a # at the beginning), change it accordingly. If it is commented, uncomment it by removing the leading # and make sure it says UTC=no.


          4. Save the file and quit the text editor.


          5. Reboot to apply your changes and check that the time is working properly now on both operating systems.


          Source: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time



          (But that is very general; I have written this answer to apply specifically to your situation, which is a somewhat common problem.)






          share|improve this answer






















          • Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
            – starbeamrainbowlabs
            Jun 20 '16 at 20:03











          • This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
            – Przemek D
            Apr 18 at 8:03












          up vote
          32
          down vote










          up vote
          32
          down vote









          Your time zone is Eastern, which is currently EDT (Eastern Daylight Time). EDT is UTC minus four hours, the same as the offset you're experiencing.



          When this happens on a dual-boot system, it's usually because one operating system thinks the hardware clock tracks local time, while the other operating system thinks the hardware clock tracks UTC.



          In your case, your hardware clock is probably set to the local time, and:



          • Windows is set to use local time, which (given your time settings) is correct.

          • Ubuntu is set to use UTC, which (given your time settings) is incorrect.

          If you were to just reset the time in the Ubuntu system, either manually or automatically, it would then be wrong in Windows, so that's not a good solution.



          Instead, the best solution is probably to reconfigure Ubuntu to treat the hardware clock time as local time (then you can leave your Windows configuration, and your hardware clock time, alone).



          To do this, edit /etc/default/rcS as root and make sure it has UTC=no:



          1. Press Alt+F2.


          2. Type gksu gedit /etc/default/rcS and press Enter.



          3. You'll probably see this:



            # assume that the BIOS clock is set to UTC time (recommended)
            UTC=yes


            • If you do, change UTC=yes to UTC=no. (Or you might want to add a comment too, by changing it to something like UTC=no # changed to accommodate Windows system. Everything on a line after a # character is a comment, and is there just to make your settings more human-readable.)

            • If you don't, look for any UTC= line. If it's uncommented (i.e., doesn't have a # at the beginning), change it accordingly. If it is commented, uncomment it by removing the leading # and make sure it says UTC=no.


          4. Save the file and quit the text editor.


          5. Reboot to apply your changes and check that the time is working properly now on both operating systems.


          Source: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time



          (But that is very general; I have written this answer to apply specifically to your situation, which is a somewhat common problem.)






          share|improve this answer














          Your time zone is Eastern, which is currently EDT (Eastern Daylight Time). EDT is UTC minus four hours, the same as the offset you're experiencing.



          When this happens on a dual-boot system, it's usually because one operating system thinks the hardware clock tracks local time, while the other operating system thinks the hardware clock tracks UTC.



          In your case, your hardware clock is probably set to the local time, and:



          • Windows is set to use local time, which (given your time settings) is correct.

          • Ubuntu is set to use UTC, which (given your time settings) is incorrect.

          If you were to just reset the time in the Ubuntu system, either manually or automatically, it would then be wrong in Windows, so that's not a good solution.



          Instead, the best solution is probably to reconfigure Ubuntu to treat the hardware clock time as local time (then you can leave your Windows configuration, and your hardware clock time, alone).



          To do this, edit /etc/default/rcS as root and make sure it has UTC=no:



          1. Press Alt+F2.


          2. Type gksu gedit /etc/default/rcS and press Enter.



          3. You'll probably see this:



            # assume that the BIOS clock is set to UTC time (recommended)
            UTC=yes


            • If you do, change UTC=yes to UTC=no. (Or you might want to add a comment too, by changing it to something like UTC=no # changed to accommodate Windows system. Everything on a line after a # character is a comment, and is there just to make your settings more human-readable.)

            • If you don't, look for any UTC= line. If it's uncommented (i.e., doesn't have a # at the beginning), change it accordingly. If it is commented, uncomment it by removing the leading # and make sure it says UTC=no.


          4. Save the file and quit the text editor.


          5. Reboot to apply your changes and check that the time is working properly now on both operating systems.


          Source: https://help.ubuntu.com/community/UbuntuTime#Make_Linux_use_.27Local.27_time



          (But that is very general; I have written this answer to apply specifically to your situation, which is a somewhat common problem.)







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Apr 13 '17 at 12:25









          Community♦

          1




          1










          answered Jul 28 '12 at 18:16









          Eliah Kagan

          79.2k20218359




          79.2k20218359











          • Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
            – starbeamrainbowlabs
            Jun 20 '16 at 20:03











          • This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
            – Przemek D
            Apr 18 at 8:03
















          • Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
            – starbeamrainbowlabs
            Jun 20 '16 at 20:03











          • This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
            – Przemek D
            Apr 18 at 8:03















          Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
          – starbeamrainbowlabs
          Jun 20 '16 at 20:03





          Note that this can also occur when you upgrade from one Ubuntu release to the next, like it did for me. I can recommend performing the above fix, and then also manually syncing your clock as in this answer (adjusting it to work with systemd): askubuntu.com/a/254846/139735
          – starbeamrainbowlabs
          Jun 20 '16 at 20:03













          This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
          – Przemek D
          Apr 18 at 8:03




          This should be the accepted answer imho. I had Windows installed and running fine, then I installed Ubuntu and the clocks went haywire - I can't see a reason why I should modify Windows settings if it was clearly the addition of linux that broke my configuration.
          – Przemek D
          Apr 18 at 8:03










          up vote
          12
          down vote













          The /etc/rcS fix did not work on my Win7 / Ubuntu 14.04x64 installation, nor did any fixes through the clock GUI. Because the root of the problem is BIOS time VS UTC time, and Windows is a pain in the butt when it comes to using UTC, I just picked a point on the map that uses UTC+0 (no change between BIOS and UTC time).



          Try changing your location to Reykjavik (the capital of Iceland). Voila! Your Ubuntu time will change to match your BIOS time.






          share|improve this answer




















          • Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
            – Pale Blue Dot
            Mar 10 '15 at 9:05














          up vote
          12
          down vote













          The /etc/rcS fix did not work on my Win7 / Ubuntu 14.04x64 installation, nor did any fixes through the clock GUI. Because the root of the problem is BIOS time VS UTC time, and Windows is a pain in the butt when it comes to using UTC, I just picked a point on the map that uses UTC+0 (no change between BIOS and UTC time).



          Try changing your location to Reykjavik (the capital of Iceland). Voila! Your Ubuntu time will change to match your BIOS time.






          share|improve this answer




















          • Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
            – Pale Blue Dot
            Mar 10 '15 at 9:05












          up vote
          12
          down vote










          up vote
          12
          down vote









          The /etc/rcS fix did not work on my Win7 / Ubuntu 14.04x64 installation, nor did any fixes through the clock GUI. Because the root of the problem is BIOS time VS UTC time, and Windows is a pain in the butt when it comes to using UTC, I just picked a point on the map that uses UTC+0 (no change between BIOS and UTC time).



          Try changing your location to Reykjavik (the capital of Iceland). Voila! Your Ubuntu time will change to match your BIOS time.






          share|improve this answer












          The /etc/rcS fix did not work on my Win7 / Ubuntu 14.04x64 installation, nor did any fixes through the clock GUI. Because the root of the problem is BIOS time VS UTC time, and Windows is a pain in the butt when it comes to using UTC, I just picked a point on the map that uses UTC+0 (no change between BIOS and UTC time).



          Try changing your location to Reykjavik (the capital of Iceland). Voila! Your Ubuntu time will change to match your BIOS time.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jul 3 '14 at 17:49









          OpensourceFool

          44437




          44437











          • Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
            – Pale Blue Dot
            Mar 10 '15 at 9:05
















          • Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
            – Pale Blue Dot
            Mar 10 '15 at 9:05















          Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
          – Pale Blue Dot
          Mar 10 '15 at 9:05




          Haha! Awesome. :D I really don't care my location. This was two seconds fix. Thanks a lot.
          – Pale Blue Dot
          Mar 10 '15 at 9:05





          protected by Community♦ Apr 18 '14 at 15:49



          Thank you for your interest in this question.
          Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



          Would you like to answer one of these unanswered questions instead?


          Popular posts from this blog

          pylint3 and pip3 broken

          Missing snmpget and snmpwalk

          How to enroll fingerprints to Ubuntu 17.10 with VFS491