Skip to content
Jan 8 / Michaël Hompus

Correcting time drift with CentOS on Hyper-V

I was having trouble with the clock in my Linux Hyper-V VM’s.The time was constantly drifting forward. Using NTP only slowed the drift a bit down but often NTP gave up after several days.

I tried a lot of NTP configurations, but basically the local clock was just unreliable. Even using rdate every 10 minutes was already showing backwards jumps of several seconds. As one of my VM’s is running dovecot this really was a problem because dovecot hates time moving backwards.

I finally found the solution posted by Mat Mirabito in his blogpost “Linux (specifically CentOS running trixbox) gains excessive time on system clock”.

Edit your grub.conf and add the following to the kernel line:

divider=10 clocksource=acpi_pm

After this it works like… clockwork :)

5 Comments

leave a comment
  1. Sergio Guzman / Jan 25 2010

    Thanks for the entry, helped me with my 2 virtual DNS in Hyper-V

  2. Michaël Hompus / Feb 2 2010

    I’m glad I could help :)

    It took me a year before finding a solution and I hope this post will prevent others from having such a long frustrating time.

  3. Ken Kim / Jul 5 2010

    I added like below but now solved.

    title CentOS (2.6.18-164.el5)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/VolGroup00/LogVol00
    initrd /initrd-2.6.18-164.el5.img
    divider=10 clocksource=acpi_pm

    is it correct?

  4. Michaël Hompus / Jul 6 2010

    @Ken Kim:

    No, the divider part should be added on the end of the line starting with “kernel”.

    title CentOS (2.6.18-164.el5)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/VolGroup00/LogVol00 divider=10 clocksource=acpi_pm
    initrd /initrd-2.6.18-164.el5.img

Trackbacks and Pingbacks

  1. Microsoft releases Linux Integration Services for Hyper-V 2.1 Beta | Michaël's coding thoughts
Leave a Comment