我的 Centos 5 VM 正在漂移时间。
我搜索了不同的答案来解决这个问题。
我查看了 VMWare 的提示,并tinker panic 0
在我的 ntp.conf 文件中进行了添加。我还将内核参数更改为:
kernel /vmlinuz-2.6.18-194.32.1.el5 ro root=/dev/VolGroup00/LogVol00 notsc divider=10 clocksource=acpi_pm
它工作了一段时间,然后我最近重新启动了我的机器,它又恢复了原来的状态。虽然我遵循了与上次相同的步骤,但我不确定如何让它再次工作。
有任何想法吗?
以下是我的 ntpq -pn 的样子:
remote refid st t when poll reach delay offset jitter
==============================================================================
122.226.192.4 204.152.184.72 2 u 32 64 377 68.894 38873.7 5711.48
116.193.170.16 192.93.2.20 2 u 35 64 177 135.991 45598.7 10745.4
116.193.83.174 192.43.244.18 2 u 38 64 377 76.782 43291.2 8170.13
61.153.197.226 209.81.9.7 2 u 32 64 377 83.523 34288.8 6679.24
答案1
我觉得自己是个十足的白痴。刚刚意识到我在 grub 上加载了错误的默认内核,并且 grub 选项中的一个值拼写错误。我现在已经修复了它,它正在运行……
对于那些好奇的人,我拼写错误:
clocksource=acpi_pm
作为
clocksource=acpi_p
学过的知识。
答案2
这是 x86 还是 x86_64 内核?我看你已经看过 VMWare 文档了 - 你是否尝试过设置“clock=pit”?
虽然已经有一段时间了,但使用 AMD CPU 时我曾见过这种特定行为(具体来说,大约 6-8 年前我在 AthlonXP 和 Athlon64 CPU 上见过这种行为),并且只能通过完全禁用影响主机系统上 TSC 的任何 CPU 电源管理(这将是任何改变 CPU 时钟频率的东西),并强制我的 Linux 客户机以“clock=pit”运行来修复它。据我所知,英特尔芯片从未受到影响 - 我猜他们的 TSC 实现更好。
答案3
你看过 VMWare 的Linux 客户机的计时最佳实践?
尝试
分频器=10 时钟源=acpi_pm
或者
除数=10
在你的引导加载程序配置中。
您还想尝试:
vmware-guestd --cmd “vmx.set_option synctime 1 0”
以停止 VMWare 客户工具和 NTPd 之间的争用。
答案4
您的 ntpq 输出缺少上游主机左侧的任何符号,以表明您的 ntp 服务器对它们的看法。
通常,其中一个旁边会有一个 *,其他旁边会有一个 + 或 -。* 是当前选择的时间源,+ 是候选,- 已从候选中排除。还有其他符号,但很少见到。
缺少符号表明您的 ntp 服务器没有尝试从任何其他服务器设置自己的时间,这可能是由于权限问题。
检查您的配置中的任何“限制”行或随意将其添加到您的问题中。