我正在使用 VirtualBox 运行 Ubuntu VM,并且安装了dkms
和virtualbox-guest-additions
软件包。我读到这个答案系统时钟应该通过 Guest Additions 自动与主机同步,但我的似乎没有这样做。可能的原因是什么/我该如何纠正这个问题?我尝试到处搜索这个问题,但我从 Google 上得到的大部分搜索结果都告诉你如何禁用自动时间同步,不启用。
我的主机正在运行 OS X 10.8,如果这有帮助的话。
答案1
ntp
事实证明,除了上面提到的另外两个软件包之外,我还需要安装这个软件包。
我将计算机从睡眠状态唤醒后的日期/时间:
$ date
Wed Sep 25 12:50:25 EDT 2013
然后,纠正它:
$ sudo service ntp stop
* Stopping NTP server ntpd
$ sudo ntpdate pool.ntp.org
25 Sep 13:22:45 ntpdate[15379]: step time server 109.169.89.48 offset 1880.691920 sec
$ sudo service ntp start
[sudo] password for yiqing:
* Starting NTP server ntpd
现在已同步到真实日期/时间:
$ date
Wed Sep 25 13:23:07 EDT 2013
重新启动后,我发现我的虚拟机的系统时钟已按预期与主机同步。
答案2
假设安装了 virtualbox-guest-additions,如果与主机的时间同步不起作用,您可以使用以下命令启用它:
从主机运行的命令
# Synchronize the time with the host every 60 seconds (Default 10 seconds)
VBoxManage guestproperty set "${VB_VM_NAME}" "/VirtualBox/GuestAdd/VBoxService/--timesync-interval" 60000
# Adjust in drift increments of 1 second (Default 100 milliseconds)
VBoxManage guestproperty set "${VB_VM_NAME}" "/VirtualBox/GuestAdd/VBoxService/--timesync-min-adjust" 1000
# Adjust if out of sync by more than 30 seconds (Default 20 minutes!)
VBoxManage guestproperty set "${VB_VM_NAME}" "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold" 30000
信息来自https://forums.virtualbox.org/viewtopic.php?t=90233
这是一个比使用 NTP 更好的解决方案,因为无论何时 VM 或主机从挂起/暂停/休眠状态恢复,时间同步都会立即发生。
我非常想知道为什么如果客户机附加组件已安装并正在运行(我也遇到过这种情况),它(与主机的时间同步)就无法工作。如果您有线索/指示,请发表评论。