现在的计算机和几年前相比,无论是CPU处理能力,还是内存容量方面都显著增强了,因此往往会剩余较多的计算能力,正好可以利用它们在主操作系统上安装第二个客户机操作系统,如果不了解虚拟化的人可能会问,为什么要这么做呢?总结起来,原因无外乎三个:
可以尝试其它操作系统(如Windows,Linux,Solaris,FreeBSD等);
相关阅读:《Ubuntu中用VirtualBox虚拟机安装Windows XP完整图解》
测试新的发行版;
为产品准备一个专用运行环境,例如,我在一个虚拟机(VM)上安装了MySQL+Apache+我的Wordpress网站本地副本需要的一切内容。
在这篇文章中,我将会给大家介绍三个伟大的桌面计算机虚拟化软件,我将在我的Ubuntu 10.04机器上安装下面三个软件进行横向分析。
VMware Player
VirtualBox (OSE)
KVM
对这三个软件,我会使用下面的衡量标准进行打分(1-3分):
易于安装
管理工具
特性(包含许可)
可用的虚拟镜像
Vmware player
官方下载地址:http://www.vmware.com/products/player/
Vmware player是在PC上同时运行多个操作系统最简单的方法,凭借其友好的用户界面,Vmware player让每个人都有勇气尝试Windows 7,Chrome OS和最新的Linux,或创建隔离的虚拟机用于新产品测试和安全上网。
安装
要安装VMware player你必须去VMware网站注册一个账号,然后到你的注册邮箱里找到激活邮件,点击激活链接激活你的配置文件,这样你才能下载VMware player,有32位和64位Windows及Linux版本,文件大小大约105MB。
下载完毕后,用root用户登录,打开终端窗口,执行下面的命令:
bash /YOURPATH/VMware-Player-3.1.1-282343.i386.bundle将会弹出一个图形界面安装程序,它会询问你在启动时是否要检查新版本,以及你是否愿意发送反馈信息,然后就是正式的安装过程。
得分:★
管理
VMware player的图形界面设计得非常棒,它提供的选项也很容易理解是怎么一回事,我选择“创建一个新虚拟机”,根据向导选择了Debian Mint的.ISO镜像文件,为VM分配了硬件资源,并为新VM输入了描述信息,整个过程花的时间很短,完成配置后,我开始启动虚拟机,这时我收到了一条提示信息:
你的处理器不支持PAE,没有这项支持,VMware Player不能继续。实际上,我的32位机器带有2GB内存,因此我为什么还需要PAE内核呢?没办法,我只得用下面的命令来安装它:
sudo aptitude install linux-generic-pae linux-headers-generic-pae之后我重启了计算机,并重新启动Vmplayer。在重启过程中,有些VMware模块会重新编译以兼容新内核,但Vmplayer却爆出了同样的错误。
因此我什么也没做成,瞎折腾了一番,于是我愤怒地输入下面的命令将其卸载了。
vmware-installer –uninstall-product vmware-player然后我在我的笔记本电脑上重新安装Vmplayer,因为是64位Gentoo,因此还算顺利。
得分:★★。 如果不是桌面计算机出问题,我会给它打3分的。
特性
Windows和Linux上的管理界面一致
VM快照可用
32位和64位虚拟机
单个虚拟机最大可以支持8个CPU
具有3D图形加速选项
闭源
得分:★★
虚拟镜像
在http://www.vmware.com/appliances/有大量的虚拟机供下载,你可以找到许多免费的虚拟机,也有一些有专家的支持。
得分:★★★
小结
VMware player来自有10年虚拟化行业经验的公司,它相当稳定,但我认为在Linux下使用它的唯一理由是可以复用Windows下创建的VM,或和其它平台交换VM。
总分:★8
Oracle VirtualBox(原Sun VirtualBox)
官方下载:http://www.virtualbox.org/
VirtualBox相对来说是虚拟化市场的新来者,第一个版本是2007年发布的,VirtualBox是由Innotek创建的,于2007年1月基于GPL协议开源,但很快就被Sun相中,于是将其收入囊中,但Sun后来又被Oracle收购,因此现在VirtualBox所有权是属于Oracle的,最近发布了3.0版本,带来了许多新功能。
图 VirtualBox
安装
在许多Linux发行版中自带了VirtualBox安装包,在我的Ubuntu 10.04中,我只需要安装virtualbox-ose,它会自动从Synaptic安装所有依赖包。
得分:★★★
管理
VirtualBox提供了一个胖客户端管理所有虚拟机。它易于使用,并提供了和VMware管理控制台类似的向导,很快便可以创建一个虚拟机,在这方面它和VMware有得一拼。
得分:★★★
特性
支持Windows和Linux
虚拟SMP最大支持4处理器
支持64位宿主主机和客户机
快照捕捉和回滚都很简单易用
提供3D图形加速选项
提供开源和闭源双许可
得分:★★★
虚拟镜像
我没有找到提供大量虚拟机下载的仓库,http://virtualboxes.org/images/是一个不错的地方,但不用担心,如果你真的想直接下载现成的虚拟机,可以将VMware虚拟用具转换成VirtualBox支持的格式。
得分:★★
小结
虽然是虚拟市场的新来者,VirtualBox已经取得了相当不错的成绩,也许与它特有的双许可模式有着密切的因果关系,其界面直观,易于使用。
KVM
官方网站:http://www.linux-kvm.org/page/Main_Page
KVM(基于内核的虚拟机)是一个x86 Linux全虚拟化解决方案,需要硬件支持虚拟化扩展(Intel VT 或AMD-V),它由一个载入时内核模块kvm.ko(提供核心虚拟化基础设施)和一个处理器特殊模块kvm-intel.ko或kvm-amd.ko组成,在它上层需要修改过的QEMU。
使用KVM,我们可以运行多个Windows或Linux虚拟机,每个虚拟机都拥有自己的虚拟硬件:网卡,磁盘,显卡等。
从2.6.20开始,KVM就进驻了Linux内核,它是一个开源软件。
图 3 KVM
安装
KVM对处理器有着特殊的要求,因此在安装前最好先用下面的命令检查一下你的机器是否与它兼容:
egrep -c ‘(vmx|svm)’ /proc/cpuinfo如果上面的命令返回0表示不支持KVM,如果返回1表示支持。
在我的桌面电脑上返回了0,因此KVM最终也只在我的64位Gentoo笔记本电脑上做了测试,这台笔记本配置了英特尔双核处理器,我在Gentoo内核开启了KVM和kvm-intel模块。
如果在Ubuntu中可以安装KVM,你应该使用下面的命令来安装它:
$ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utilslibvirt-bin提供了libvirtd,它可以用来管理QEMU和KVM实例。
ubuntu-vm-builder是创建虚拟机的命令。
bridge-utils在你的网络和虚拟机之间架起了一座桥梁。
得分:★★
管理
KVM没有提供官方的管理界面,但有大量的第三方工具可以管理KVM域,用的最多的要数Red Hat的virt-manager,它提供了一个简单但高效的图形界面。
来自Convirture的Convirt是另一个管理KVM虚拟机的GUI工具,它和virt-manager类似,都支持远程和本地机器。
在我的测试中,我只使用了命令行工具,为此我还阅读了kvm-img的帮助手册。
得分:★★
特性
支持32位和64位虚拟机
实时迁移
可选的半虚拟化
直接访问USB总线
仅支持Linux(它是Linux的一个内核模块)
开源
得分:★★。如果我是在评估服务器虚拟化解决方案,它应该得3分。
虚拟镜像
我发现http://stacklet.com/提供了一些Linux发行版的镜像。
得分:★★
小结
KVM是一个集成的Linux解决方案,我发现用它创建的虚拟机响应速度不错,唯一的缺陷是少针对桌面解决方案的功能,如3D图形加速,或GUI管理工具。
总分:★8
总结
说了这么多,究竟哪一个虚拟化解决方案才是Ubuntu桌面的最佳选择呢?
就我所测试的这三个产品而言,对于那些只是想体验一下其它操作系统的初级用户,VirtualBox无疑是最好的选择。对于那些已经熟悉虚拟化的高级用户,并且属于命令控一类的人,KVM可能是他们的最爱。VMPlayer对于那些制作虚拟用具的人来说,可能更有吸引力。
就我个人而言,我喜欢在桌面电脑上使用VirtualBox测试最新的发行版,在我的笔记本电脑上,我使用的是KVM,我用它创建了一个虚拟机用于工作,我计划在我的服务器上也采用KVM。