linux 在VM WARE中,时间会变慢的原因及解决方法 - zhuxinkun的专栏 ...

来源:百度文库 编辑:神马文学网 时间:2024/04/25 18:44:00
linux 在VM WARE中,时间会变慢的原因及解决方法 收藏
安装好vmware后发现vmware的时间会越走越慢,是什么原因呢,以下是摘自http://blog.seety.org/everydaywork/2005/5/22/332/ 的介绍:
Linux 2.6核心里把系统计时器的频率加高到1000 Hz ,VMware没办法真的每隔1ms就报一次讯号给guestOS,所以guestOS里的Linux 2.6无法确实接到计时器的讯号。本来这也不应该造成问题,不过2.6核心处理这个"tick loss"的程式有问题,以致于guestOS里的Linux 2.6系统时间走一秒会慢一秒;外面过了两秒里面只过了一秒。可以通过更改计时器频率的方法来处理:
include/asm-i386/param.h
#define HZ               1000               /* Internal kernel timer frequency */
改成
#define HZ               100               /* Internal kernel timer frequency */意思就是让计时器慢到 100Hz,虽然这样可行,但要重新编译内核太麻烦了。那有没其他办法呢,答案是肯定的。方法一:安装Vmware tools安装完成vmware tools后运行 vmware-toolbox,把Options中的time synchronization....钩选上。这样VMWare Tool后台程序就会每三分钟与宿主主机同步更新一次时间。试验中发现vmware-tolls 只会在虚拟机慢于主机的时候将虚拟机时间同步到主机,暂时未发现怎么设置使虚拟机时间过快的时候也同步。vmware tools的安装,参考别人的另一篇笔记:http://hi.baidu.com/archieyao/blog/item/498848adab17290a4a36d61c.html      据网上的介绍,对于grub方式启动,在kernel参数里加入 clock=pit nosmp noapic nolapic也可以解决部分问题,但我试验过好像并没什么优化,如果不进行时间同步,虚拟机上的时间依然走得像醉汉,可能我的内核是2.6的原因吧。方法二、连接到时间服务器同步时间,前提是能联网。      linux下使用ntpdaten连接时间服务器进行时间同步,ntpdate命令的语法很简单,但必须用root身份运行它。你可以在命令行中指定一个或者多个时间服务器。
命令格式:
#ntpdate 服务器地址      到那找时间服务器呢?Windows XP中有几个现成的时间服务器可以使用,何不就地取材呢^-^ ,打开xp控制面版->日期和时间->internet时间,服务器列表里的服务器都可以使用:#ntpdate time.windows.com time-a.nist.gov time-b.nist.gov time-nw.nist.gov还可以使用这里面的时间服务器:Internet 上可用的“简单网络时间协议”时间服务器列表 http://www.mycuc.com/Article/wenzhai/pcwz/200704/634.htm      为了保证时间精确同步,还需要定时运行ntpdate来同步时间,通过crontab来实现定时调度。例如设定每分钟同步一次,添加进系统任务调度中,在/etc/crontab里面添加以下句子:*/1 * * * * ntpdate time.windows.com time-a.nist.gov time-b.nist.gov time-nw.nist.gov重启系统任务调度服务:
#service crond restart等候1分钟左右检查时间同步是否起作用。--------------------------------------------------------------------------------------------------------------关于时间过快或过慢的vmware 官方文档:http://www.vmware.com/pdf/vmware_timekeeping.pdfClock in a Linux Guest Runs More Slowly or Quickly Than Real Timehttp://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1420    在redhat linux虚拟机上安装vmware tools2007-10-14 21:31 安装步骤如下:
1、点击打开vmware 点击Power On启动linux虚拟机,并以root身份登录2、vmware窗口点击vm->install vmware tools..
此时,vmware 会自动构造一个ISO映像文件,并临时连接到虚拟机的cdrom注:如果虚拟机中cd-rom中使用了 "use ISO image"方式装载了光盘映像,需要把它切换回"use physical driver",不然装载vmware的ISO映像后在linux中打开光盘看到的是乱码的东西。3、进入虚拟机,从光盘中找到vmware-tools.XXXX.rpm文件
如果你的linux没有设置自动挂载光盘,就要先用mount /dev/cdrom /mnt 挂载cdrom设备。4、使用rpm -ivh vmware-tools.XXXX.rpm安装5、使用vmware-config-toos.pl来配置vmwaer环境
      运行./usr/bin/vmware-config-tools.pl  配置选默认、分辨率按显示器属性选择。
 
6、取消光盘挂载、vmware窗口点击vm->cancle vmware tools install关闭vmware构造的ISO映像。安装完vmware以后有以下几点好处:
1)、鼠标可以自由在虚拟机与主机之间切换了,没有安装vmware tools的时候需要用ctrl+A、Ctrl+G来切换。2)、虚拟机与主机的剪贴板可以通讯了,可以在虚拟机和主机之间自由复制、粘贴文本。上面两点的详细设置可以在vmware的菜单edit-preferences里进行设置。3)、可以设置虚拟机与主机之间的时间同步:在linux中运行vmware-toolbox,在弹出窗口把Options中的time synchronization....钩选上即可。 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhuxinkun/archive/2009/04/03/4045513.aspx