我在虚拟机上运行 ubuntu,但时间没有更新。我该如何设置我的机器,以便每次打开它时时间都是正确的?
Ubuntu 12.04
在以 W7 为主机的 VMware VM 上运行。
答案1
如果你在 VirtualBox 下以 Guest 身份运行 Ubuntu,那么你应该知道系统时间会自动保持同步新增嘉宾
在这种情况下,您的解决方案是禁用 Guest Additions,可以通过执行以下指令来实现
sudo service vboxadd-service stop
或者
sudo /etc/init.d/vboxadd-service stop
然后您可以根据需要设置时间
将日期更改为2015年6月25日 12:48,命令如下:
sudo date --set "25 Jun 2015 12:48:00"
答案2
您的客户操作系统在启动时从主机获取时钟,希望这能使两者保持同步。然而,这确实不是发生这种情况是因为计时器中断之间的间隔(操作系统以此为基础进行计时)被 VMWare(以及 Xen、VirtualBox、HyperV 等)拉长和压缩。
您有两种解决方案。要么使用守护进程(在 VMWare Tools 中)来保持主机和客户机同步,要么使用常用的 Linux 计时 ntp 守护进程。我强烈建议使用第二种方法,实际上对于主机和客户机都适用(如果主机不是 Linux,还有其他解决方案!)。
sudo apt-get install openntpd
会帮你处理(几乎)所有事情。我更喜欢OpenNTPd更常见的神经氨酸酶因为它是同一协议的更轻、更简单、更安全、更新的实现。
如果你真的想感到震惊,你可以阅读这里VMWare 的有关虚拟机计时的手册,以便了解该主题的复杂性。