Cloud Server中的时间漂移​​ – 需要主pipeGRUBconfiguration

我们正在主持一个受欢迎的主机VPS,正在经历每天几分钟的正常时间漂移(约7)。

Linux内核:2.6.18-164.11.1.el5 GNU / Linux发行版:CentOS发行版5.4(最终版)

我们与我们的托pipe服务提供商联系,他们的支持build议我们“这是一个云服务器已知的问题。要解决这个问题, 您需要添加一行到您的grubconfiguration位于: /boot/grub/menu.lst

你需要添加的行是: noapic nolapic divider = 10 nolapic_timer

这应该纠正这个问题。 join后您将需要重新启动。“

因为我对操作grub非常谨慎,大多数情况下我很害怕我们的服务器可能无法重新启动 – 我问你们,pro * nixpipe理员 – 在这个文件的确切位置插入下面的build议:

# line from 1&1 for time syncing issue (Case 5163) noapic nolapic divider=10 nolapic_timer 

走? 请具体说明,确定命令的顺序是否重要。 为什么“title CentOS …”下方的块缩进?

如果有人能够给我一个关于这是如何工作的概述,或者指向一个易于理解的资源,那么我正在寻找这个资源,对我所做的事情进行简要的概述或基本的了解。 如果GRUB和引导程序是内核黑客的深藏宝库,那么非常值得推荐的深入资源也非常受欢迎。

这是我目前的/boot/grub/menu.lst

 # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file #boot=/dev/sda # serial --unit=0 --speed=57600 terminal --timeout=5 serial console timeout=5 title CentOS (2.6.18-164.11.1.el5) root (hd0,0) kernel /boot/vmlinuz-2.6.18-164.11.1.el5 ro root=/dev/hda1 console=tty0 console=tty initrd /boot/initrd-2.6.18-164.11.1.el5.img 

最重要的是:我需要知道上面的文件中的哪个位置适合粘贴build议的行,以便在操作GRUBconfiguration后可以放心地重启我的VPS

由于您可以访问串口控制台,所以我的第一个build议是进行testing设置并临时执行更改,以便在需要重启的情况下不会造成麻烦。

暂时testing设置

连接到服务器的串行控制台并重新启动。 当服务器启动并显示grub计数值时,按任意键(例如SPACE)取消默认启动过程并进入GRUB菜单。

它会让你到一个菜单,你会看到的

CentOS(2.6.18-164.11.1.el5)

作为一个选项

e进入命令行编辑选项。

这会告诉你这些行:

  root (hd0,0) kernel /boot/vmlinuz-2.6.18-164.11.1.el5 ro root=/dev/hda1 console=tty0 console=tty initrd /boot/initrd-2.6.18-164.11.1.el5.img 

按↓select内核行,然后按e编辑。 使用箭头键向左和写…按→到最后(机会是你已经在那里)。

注意:如果屏幕线太长,只会显示屏幕左边的最后一行,不要害怕它:-)

在这里,您可以添加支持人员给您的额外参数:

 ... noapic nolapic divider=10 nolapic_timer 

所以你的整个内核线将是

  kernel /boot/vmlinuz-2.6.18-164.11.1.el5 ro root=/dev/hda1 console=tty0 console=tty noapic nolapic divider=10 nolapic_timer 

您将返回到上一个显示启动命令的屏幕。

只需按b即可启动系统。

如果一切顺利APIC驱动程序将closures,您的计时器将打勾沿… 🙂

当你想永久的改变…你可以把它们添加到grub文件中。

永久的变化

 # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file #boot=/dev/sda # serial --unit=0 --speed=57600 terminal --timeout=5 serial console timeout=5 title CentOS (2.6.18-164.11.1.el5) root (hd0,0) kernel /boot/vmlinuz-2.6.18-164.11.1.el5 ro root=/dev/hda1 console=tty0 console=tty noapic nolapic divider=10 nolapic_timer initrd /boot/initrd-2.6.18-164.11.1.el5.img 

重新启动,如果你想和享受。

请注意,您可以通过执行我在grub中显示的内容来解决问题。

如果你最终在grub> prompt 🙂

如果你在控制台上意外地发现了grub>提示符

grub> configfile /grub/grub.conf

你可以通过input一个良性的命令,比如configfile,然后用斜杠(/),按Tab键两次,就可以看到当前的分区,就像你在bash提示符下完成名字的操作一样,你会看到你的启动文件列表划分

这些参数是内核调整。

将这些参数添加到您的内核行:

 kernel /boot/vmlinuz-2.6.18-164.11.1.el5 ro root=/dev/hda1 console=tty0 console=tty noapic nolapic divider=10 nolapic_timer 

哦,顺便说一句,如果你正在尝试使用串口控制台,你可能是指console=ttyS0