[arch-general] time zone problem with systemd

Shridhar Daithankar ghodechhap at ghodechhap.net
Sat Aug 18 14:05:21 EDT 2012


On Saturday 18 Aug 2012 8:04:58 PM Keshav P R wrote:
> Your problem might be due to RTC (motherboard) clock being in local
> time (generally the case if you dual-boot with Windows. Systemd
> assumes that RTC is in UTC, but in case of initscripts it can be
> configured to be localtime. Hence the time offset with systemd boot.

Thank you very much for the precise problem description. This used to be a 
windows laptop and the BIOS clock reported correct time.

The other machine where time was correct, the BIOS clock was behind 5.30 
hours.

> This is how I changed the clock to UTC and setup the correct time.
> 
> 1. Boot into Windows and follow
> https://wiki.archlinux.org/index.php/Time#UTC_in_Windows . After this
> change Windows will no longer touch RTC clock at all, even if NTP is
> enabled. From this moment on your RTC will be managed by any Arch.
> Even after this change the RTC still remains localtime.
> 
> 2. Boot into Arch and setup the files
> /etc/{timezone,localtime,adjtime} according to your timezone, but with
> RTC clock as UTC (very important). RTC as local time does not work
> with systemd and may not work sometimes even with initscripts.
> 
> 3. Run "sudo hwclock --localtime --hctosys". This (temporarily) makes
> the system clock the correct time.
> 
> 4. Synchronise the system (software) clock using NTP. I use chrony as
> NTP daemon, but any NTP daemon should do. This is needed even after
> step 3.
> 
> 5. Stop the NTP daemon systemd service.
> 
> 6. Run "sudo hwclock --utc --systohc". This changes the RTC time to
> current UTC time.
> 
> 7. Start the NTP daemon systemd service.

I rebooted the machine, set the bios clock correctly i.e. 5.30 hours behind 
local time and now I have correct clock even after couple of reboots.

That's sufficient?
-- 
Regards
 Shridhar


More information about the arch-general mailing list