如今,随着Linux逐渐地被接受,同一台计算机上安装Linux和Windows已经不是什么新鲜的事情了。不过你有没有想过在一台计算机上同一时刻运行Linux和Windows呢?而不仅仅是在同一台计算机安装多个操作系统,或许在很多人眼里这是一件难以置信的事情。美国VMware公司推出的虚拟计算平台——VMware为我们提供了一个具有创新意义的解决方案,你可以在使用Gimp的同时,运行Microsoft Word。不仅如此,你还可以同时运行各种Linux发行版、Dos、Windows 3.1、Windows 95、Windows 98、Windows NT,Windows 2000、Windows ME以及FreeBSD等,你甚至可以在同一台计算机上安装多个Linux发行版、多个Windows版本。
一、VMware 的特点
1、虽然VMware只是模拟一个虚拟的计算机,但是它就像物理计算机一样提供了BIOS,你可以相同的方法更 改BOIS的参数设置。你不需要重新启动就可以同时在一台计算机上运行多个操作系统,可以是在窗口模式下 运行客户机,也可以在全屏模式下运行,当你从Guest OS切换到Host OS屏幕之后,系统将自动保存Guest OS 上运行的所有任务,以避免由于Host OS的崩溃,而损失Guest OS应用程序中数据。
2、每一个在主机上运行的虚拟机操作系统都是相对独立的,拥有自己独立的网络地址,就像单机运行一个操 作系统一样,提供全部的功能,当然,如果你的计算机内存比较小的话,你明显感觉到速度很慢。最令人兴 奋的是,当你的计算机在同时运行多个操作系统的情况下,如果,其中一个Guest OS的崩溃,但是并不影响 其它Guest OS的正常运行。
3、在虚拟机上安装同一种操作系统的另一发行版,不需要重新对硬盘进行分区,比如,你可以在Red Hat Linux的一个目录下,安装Turbo Linux 或者其它的Linux 版本,而不需要重新分区。
4、虚拟机之间支持TCP/IP、Novell Netware以及Microsoft网络虚拟网络以及Samba文件共享等。而且,支 持Guest OS和Host OS之间以及不同Guest OS操作环境下的剪切、复制和粘贴操作。VMware支持CD-ROM 、软 驱以及音频的输入输出,和VMware 1.0相比,最新版本的VMware 2.03改进了不少,比如增加了对SCSI设备、 SVGA图形加速卡以及ZIP驱动器的支持。比如,你运行的是英文版的Linux,而同时又想处理中文,在内存足 够的条件下,那么同时运行Windows是一个不错的选择。
注意:目前还不支持MIDI声频,以及游戏控制器和操纵杆。
5、在VMware的窗口上,模拟了打开虚拟机电源、关闭虚拟机电源以及复位键等,这些按钮的功能对于虚拟机 来说,就如同虚拟机机箱上的按钮一样。如果你的客户机的操作系统是Windows ,在运行过程中非正常关机 或者VMware崩溃,下次启动Windows的时候,它会自动进行文件系统的检查与修复。
注意:Guest OS——指运行在虚拟机上的操作系统;Guest就是VMware虚拟出来的客户机。Host,指物 理存在的计算机,Host OS指在Host上运行的操作系统;例如笔者在Linux为操作系统的计算机上安装了 VMware,虚拟了Windows 2000 专业版。那么,Host指的是安装Linux的这台逻辑计算机,其Host OS为 Linux;虚拟机上运行的Windows 2000 专业版就是Guest OS。
二、 VMware的运行原理
VMware是一个具有创新意义的应用程序,通过VMware独特的虚拟功能,你可以在同一个窗口运行多 个全功能的虚拟机操作系统。而且VMware中的Guest OS直接在X86保护模式下运行,使所有的虚拟机操作系统 就像运行在单独的计算机上一样,因此,VMware在性能上有十分出色的表现。熟悉LInux的朋友可能会想到 Linux下的模拟器—Wine,它们有本质上的区别, Wine (Wine Is Not an Emulator)是一个在X和Linux之上 的,提供了Windows 3.x 和 Windows9x API函数接口,它是一个Windows兼容层,这个层即提供了一个用来从 Windows源进出到UNIX的开发工具包(Winelib),也提供了一个程序加载器,该加载器允许不用任何修改Windows 3.1/95/NT的二进制文件,简单的说,wine是一个Linux下Windows应用程序模拟器,而不能独立地运行一个全 功能的操作系统。目前 Wine 仍在发展阶段,仅能执行少部份的 Windows 软体,大部份的软体仍然无法正常 执行。 如图下所示,这是VMware的运行原理图示。
VMware运行在主机的操作系统之上,它在Guest OS与Host OS之间加了一层虚拟操作平台(VMware Virtual Platform),所有的客户操作系统都运行在虚拟操作平台之上。
主机的系统要求:
VMware 2.01 for Linux: CPU: Intel(r) Pentium(r) II或其它X86兼容处理器, 主频至少为266MHz或更高, 支持SMP(对称多处理器)。Intel: Pentium Pro, Celeron, Pentium II, Pentium III AMD: K6-2, K6-III, Athlon (K7) 。
内存:最少96M,推荐128M以上。
其它:支持256色以上的显示效果;在bridged模式下,可以选择网卡,在虚拟机上启用网络功能。
Linux操作系统:单CPU系统的内核至少为 2.0.32或更高 ;SMP 系统的内核至少为 2.2.0或更高。已经通过 的Linux发行版本为Red Hat Linux 5.x, 6.0, and 6.1 Caldera OpenLinux 2.2 and 2.3 ;SuSE Linux 6.0, 6.1, 6.2, and 6.3 ;TurboLinux 6.0。
X-server:XFree86-3.3.3.1 或者更高。虽然,XFree86 4.0已经推出,但是由于XFree86 version 4.0的稳 定性难以保证,VMware 2.01 for Linux还不支持XFree86, version 4.0,建议采用XFree86 version 3.3.4 。
VMware 2.03 for NT或者Windows 2000:
CPU: Intel(r) Pentium(r) II或其它X86兼容处理器, 266MHz 或更高, 支持SMP(对称多处理器)。
内存:最少96M,推荐128M以上。
其它:支持256色以上的显示;任何bridged模式的网卡。
操作系统:要求Windows NT Server 或者Workstation 4.0 + Service Pack 3以上;Windows 2000 Professional版以及Server 版系列;另外,浏览器要求安装IE 4.0以上版本,因为VMware的帮助文件是HTML 格式的,而且此帮助文件目前还不能在其它浏览器下工作。
笔者的计算机为Red Hat Linux 7.0 和Windows 98以及Windows 2000 专业版3个操作系统共存,在Linux下成功地 虚拟运行Windows 2000 专业版。接下去笔者就以Linux为主机虚拟运行Windows 2000 专业版为例,说明如何使用VMware。当然,你也可以在 Linux下运行VMware,重新安装Windows虚拟机;或者在Windows NT以及 Windows 2000下虚拟安装Linux,它们的操作都差不多,有兴趣的朋友可 以自己体验一下。
三、下载及安装
目前,VMware的最新版本是2.03,你可以到VMware的站点:http://www.vmware.com/去了解更详细的内容,确定VMware是否支持你的计算机硬件。下载的时候要注意,你要选择VMware 版本,国内下载地址为:http://www.cnvnet.com/download/d/VMware-2.0.3-786.tar.gz(Linux 版本)。VMware是一个商业软 件,如果你要想运行VMware,还必须到它的公司站点上申请一个可以免费试用30天的License(许可证)。
最新版本的VMware 2.03除了修正了大量的bug,大大地改善了之外,还提供了很多新的功能:
改善可对鼠标的支持,现在VMware支持滚轮鼠标。
为Windows ME虚拟机提供SVGA驱动程序。
VMware主机支持Linux 2.4内核。注意:这个版本并不支持运行Linux 2.4内核主机上的双向并行端口。
支持更多的Linux发行版本,为Red Hat Linux 7.0、Caldera OpenLinux 2.4以及 SuSE Linux 7.0提供 预编译的模块。
假设你下载的VMware是以*.tar格式打包的,那么在控制台下进入*.tar目录,执行命令:tar -d *.tar。
如果,你是第一次使用VMware,那么进入解压后的VMware-distrib目录,执行命令:./ install.pl安 装;如果你以前使用过旧的VMware版本,则进入VMware-distrib\installer目录,执行命令:./ old-install.pl安装。
在安装的过程中,VMware安装脚本会要求你回答VMware安装目录以及是否自动运行VMware配置脚本 等几个问题。如果你是从TAR压缩包安装VMware,安装脚本将自动运行VMware配置脚本VMware-config.pl;如 果安装的是RPM格式的VMware或者你改变了Linux内核,那么你就必须手动运行VMware配置脚本VMware-config.pl,事实上,当VMware 运行时,如果检测到Linux内核已经改变,它将会提示你重新运行VMware配置脚本VMware-config.pl 。要想运行这个脚本很简单,只要在控制台下输入config-VMware.pl就可以了。如果VMware提供的预编译模块不适合你的Linux内核,VMware配置脚本程序将会重新编译模块。期间,VMware配置脚本程序还会询问你是否允许虚拟机访问主机的系统文件。
安装完之后,把你收到的许可证文件名改为license,复制到VMware的目录下就可以了。
四、配置虚拟机
首先,在Linux控制台下执行命令:VMware,运行VMware,如下图所示,这就是VMware的界面。选择 【Setting】菜单下的【VMware Configuration Wizard 】,启动虚拟配置文件向导,选择【VMware Configuration Wizard】,你可以在Linux下重新安装一个虚拟机操作系统,也可以配置计算机上已经安装 的Windows 操作系统;接下去为客户机操作系统的选择,因为笔者的计算机中已经安装了Windows 2000专业版,所 以选择了Windows 2000;默认的配置文件保存目录为\username\VMware\win2000,当然,你以可以更改保存目录,它以虚拟的方式在Linux 的文件目录中建立虚拟的Windows 文件系统;选择虚拟机硬盘的类型的为【Existing Physical Disk】,如果你是重新安装虚拟机操作系统,那么选 择【New Physical Disk】;如果你要在虚拟机上使用软驱与光驱,还要将Floppy 和CD-ROM 选择项设置为Enabled;VMware配置脚本程序将会询 问你是否使用虚拟机的网络。局域网用户可以选择启用虚拟机网络,这样就可以在同一台计算机上配置两种不同类型的网络,一个是主机网络,它可以访问主机系统和其它网络,同时在它虚拟的计算机上运行一个虚拟网络;另外一个是桥路网络,它就相当于主机一样的虚拟网络,你可以使用DHCP为虚拟机动态分配IP地址。如果你要求虚拟机以一个独立的主机出现在网络中,则要选择【Host-Bridge】选项。设置完毕后,保存配置。当然,以后你也可以在菜单下的【settings】选项中的【Configuration Editor】中重新修改配置文件。
注意:
1、虚拟机对硬盘以及MBR(主引导记录)读写权限最好全部设置为“Read Write(可读写)”,因为 Windows在启动的时候,要向硬盘里写东西。
2、在以前的1.0版本中,如果你要在Linux下运行Windows NT或者Windows 9X,那么你一定要下载一个在虚拟 机操作系统中安装的VMware工具:VMware-tools.exe,以便虚拟机能够支持更好的显示效果。现在的VMware 2.03中已经包含了最新的VMware工具,你不再需要下载单独的VMware工具了。 在菜单下选择【VMware tools install】就直接安装VMware工具了。
3、VMware 2.03版本对Linux 2.2.16内核支持不好,可能导致声卡无法正常工作,笔者的声卡就不能在虚拟机 中使用。VMware公司推荐最好使用较新的内核Linux 2.2.17或者Linux 2.2.15。
4、VMware 2.03在虚拟安装有Norton AntiVirus 2000的Windows时,可能会导致系统冲突,不能进入Windows 虚拟机。笔者在虚拟Windows 98的时候就出现了问题,不能进入Windows虚拟机。
五、运行虚拟机
虚拟机配置完毕之后,按下VMware快捷工具栏上的【Power On】按钮,相当于打开虚拟机的电源,启动 Windows 2000 专业版虚拟机。如下图所示,这就是Windows 2000 专业版虚拟机的启动界面。
在运行已经存在的虚拟机操作系统(也就是像笔者一样,虚拟机是从计算机硬盘里已存在的操作系统中 建立的)过程中,系统还要重新检测计算机的硬件以及安装硬件的驱动程序,不过你不要担心,它不会破坏 原来的Windows 2000 专业版配置。
漫长的计算机硬件检测以及驱动安装之后,终于进入了Windows 2000 专业版,如图下所示。由于笔者的内存限制(只有96M),所以不敢运行较大的应用程序,运行Windows 2000 专业版的感觉就像在16M内存的计算机上运行 Windows 98一样,速度有点难以让人接受。不过笔者感觉作为虚拟机的Windows 2000 专业版还是比较稳定的,在上面运行记事本之类的小程序,还是绰绰有余的。这篇文章的大部分内容就是在虚拟机的Windows 2000 专业版记事本上完成的。
注意:
1、如果你的计算机内存不是很大,那么最好不要在Linux的GNOME和KDE桌面环境中运行VMware,因为这两个桌面环境占用的内存比较大,你可以选择AfterStep、Fvwm95,最好是在安全模式下运行。
2、虚拟机操作系统的运行环境是受主机操作系统影响的。简单的说,虚拟机操作系统中的显示的颜色深 度、大小以及分辨率是由主机操作系统中的显示属性决定的,比如说如果你的主机操作系统中的屏幕分辨率 是75Hz,那么虚拟机操作系统的屏幕分辨率一定不会超过75Hz。
六、不足之出
尽管笔者为VMware公司能够开发出这样优秀的软件而兴奋不止,但是毕竟还不是很完善,存在着很多限制,像它对计算机硬件的要求 很高,现在对多媒体支持很差;另外一方面,也是最主要的原因是VMware并不是一个自由软件,昂贵的价格令很多用户望而却步。
VMware还不能完全支持任何基于Intel芯片的操作系统,像BeOS 和OS/2就是最明显的例子。如果一旦VMware不支持Linux和FreeBSD,实际上VMware就没有什么太大的意义,笔者认为很少有人会在Windows 2000下通过VMware虚拟Windows 9x以及MSDOS等。
自从VMware 1.0推出以来,VMware 已经大大改善了对DirectDraw的支持,可以在VMware虚拟机上运行一般的二维游戏,而目前 VMware对3D游戏的支持还在进一步发展中;虽然,它很好地支持声音输出,遗憾的是还不支持MIDI。这些限制大大降低了虚拟机的实用性,因此,对于大多数用户来说,多系统启动还是最佳的选择。
但是,对于很多专业人士来说,这些限制是微不足道的,VMware的主要任务是:为专业人员开发跨平台应用软件提供一个理想的解决 方案,尽量介绍不必要的麻烦,他们在也不必为了安装多个操作系统而准备多台计算机,也不需要在同一台计算机安装多个操作系统。
VMware独特的设计理念,开创了多系统共存的新纪元。随着VMware的进一步完善以及计算机硬盘性能的提高,越来越多的用户将会享受到VMware带来的全新感受。