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