解决VMWare中FreeBSD时间同步问题

最近在VMWare上学习FreeBSD,发现FreeBSD的时间总是不准,正常时间1分钟,BSD上才走大约半分钟,偏移得厉害。用ntpdatentpd都不能校正,无法正常同步时间。

VMWare
下普遍存在虚拟机CPU时钟频率慢于标准频率的BUG,导致虚拟机系统时间不准确甚至出现大幅度的偏移。在虚拟Windows系统下可以通过安装VMWare Tools并开启时间同步功能解决。但是在FreeBSD的命令行下怎么设置VMTool的强制时间同步。
经测试(VMWare Workstation 6.2)FreeBSD同样也可以:

 

第一步、安装VMWare Tools

VMWare中选择Settings > VMWare Tools Install.

 

mount /cdrom

cp /cdrom/vmware-freebsd-tools.tar.gz /tmp

umount /cdrom

 

解压并安装:

cd /tmp

tar zxf vmware-freebsd-tools.tar.gz

cd vmware-tools-distrib

./vmware-install.pl

 

第二步、修改配置:

这里有两种办法可以修改VMWare tool guest daemon的运行参数:

 

1.使用命令行方式

UnixVMWare Tool的命令行程序为vmware-guestd,默认目录为/usr/sbin/vmware-guestd。这是一个通过脚本自动运行的后台程序,可以使用这个程序更改运行参数。

语法为:

<daemon> --cmd "vmx.set_option <option> <old-val> <new-val>"

<daemon>UNIX里就是vmware-guestd(Windows系统下为VMwareService.exe,也可以执行该命令行方式).

<option>是设置选项,这里使用synctime,详细信息可以参考官方说明

<old-val>旧参数,<new-val>新参数,0FALSE1TRUE。通过设定这两个参数就可以更改指定选项的内容了。

要启用VMWare tool的时间同步就可以运行:

./vmware-guestd --cmd "vmx.set_option synctime 0 1"

 

2.直接修改虚拟机配置文件

如果只需要开启时间同步,这是相对比较简单直接的办法:

停止虚拟机,然后在在虚拟机的.vmx文件中找到:

tools.syncTime = "FALSE"

FALSE改为TRUE,再启动虚拟机即可。

 

默认VMWare Tool后台程序每三分钟与宿主主机同步更新一次时间。如何更改同步频率还没研究出来,貌似通过改运行参数是不行了,可能需要修改代码重编译吧。

注意:在虚拟机中最好不要启用ntpd同步标准时间,可能会引起时钟混乱。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值