再议 VirtualBox 与 VMware 对比,VirtualBox 没有你想的那么不堪
以截止到2022.9.22最新的VirtualBox 6.1.38 和 VMware VMware Workstation Pro16.2.4 对比
首先 如果是linux主机 ,首选 kvm 没有之一 kvm下一切都是渣
- 价格:VirtualBox 首选, VirtualBox 免费开源,VMware player免费但是仅限非商业用途,VMware WorkStation 不便宜(接近2k)。这点是很大的影响决策的因素。当然你用盗版VMware或者VMware player,或者非商业 也没啥。
- 轻量:VirtualBox是首选,VirtualBox安装后也就战役红260M硬盘 VMware 1G起步
- 多系统支持:Linux macos Windows都支持 另外VirtualBox支持无图形界面的Linux使用,也有一个基于php的web管理工具phpvirtualbox,VMware不清楚是否有。macos下vmware fusion player也是免费的,但也仅限非商业。
- 虚拟机文件管理:VirtualBox 就三个文件 vdi(虚拟磁盘) vbox(配置文件) prev(vbox的备份),VMware一堆
- 虚拟机磁盘管理:VirtualBox 的注册机制麻烦,自行复制虚拟磁盘后,会uuid冲突需要去修改一次。VMware不存在这问题。好像只有VirtualBox 存在虚拟机介质注册这个机制,而且还会检测uuid冲突
- 虚拟机磁盘格式支持:VirtualBox 支持 vdi vhd vmdk,并自带这三个之外的数种常见磁盘格式的转换。VirtualBox 只支持 vdi磁盘的整理压缩,vhd还是用Windows来。VMware只支持 vmdk但是也其他磁盘格式到vmdk的转换。VirtualBox 对vhd的完美支持,在Windows下管理更方便
- 共享目录:都支持
- 2D性能:Windows下VirtualBox 比kvm和VMware的2D性能更强。有物理机的50%
- 3D性能,VMware性能不错,VirtualBox 凑合。但是VirtualBox 的显卡内存不是网上其他博文说的只可以128M 命令行模式 可以随意改 ,也没有那么不堪。但是VMware的3D性能可以接近物理机60%左右
- cpu、内存和硬盘性能: 都一样,所有的虚拟机系统基本上都差不多的性能。
- 黑苹果:VMware需要unlock后安装,VirtualBox 需要命令行修改后才可以装最新的 maos11-13。VirtualBox 的macos不支持两个核心以上的macos 会出现一些文件。VMware的不存在这个问题。安装后的macos 都是 半斤八两,应急用没啥问题,做吃力的工作都不现实。尤其3D性能都垃圾。
- usb3 的支持,都支持。VirtualBox 有一个扩展包,大概几十m,是一个独立在VirtualBox 的扩展包和主版本一起更新。并不存在什么 麻烦的。安装挂载也简单
- tpm支持:都支持,VirtualBox 支持tpm直通,VMware支持模拟的,是否可以直通不知。只是安装win11的话,这个没差,都可以绕过
- 硬盘直通:都支持,VirtualBox 需要做一个vmdk文件映射物理盘
- 虚拟化嵌套:VirtualBox 支持,VMware应该是不支持的,未测试过。这就导致了虚拟的Windows下 基于hyper-v的wsl docker会有问题吧。
- 半虚拟化:VirtualBox 支持,VMware应该是不支持的,未测试过。另外 kvm hyper-v xen都支持半虚拟化,性能损耗更少
- 软虚拟:VirtualBox 支持,VMware应该是不支持的,未测试过。VirtualBox 可以运行arm的安卓。VMware好像是不可以的。网上大量的安卓模拟器都是内置VirtualBox
- 最新版黑群晖支持:都支持,都一样弄。不存在新版在VirtualBox 装不上的问题,自己弄引导就好了。
- 动态磁盘:都支持
- 网络支持:都支持 桥接 nat ,没差别。
- 命令行启动,注册为Server:都支持
- 动态内存管理:就是可以释放没占用的内存,hyper-v的很秀,VMware支持 ,VirtualBox 也
- 技术文章和第三方支持广泛性:国内VMware的文章更多,某一些特殊系统的安装VMware的教程更多。国内企业选择VMware的也更多。培训和教程也多以VMware为主。VirtualBox 通常被说成一种问题多性能差功能少的
其他虚拟机系统缺点
- kvm,仅适用于Linux,模拟的Windows 3D 2D都拉跨,但是可以用显卡直通和vgpu来提升。非常适合Linux老手使用。Linux的不二选择。也是unraid pve等系统的默认虚拟机系统,群晖也是
- hyper-v,接近免费,支持 vgpu 支持显卡直通,vgpu。可惜usb支持不佳。如果不是大吞吐量usb设备可以用第三方软件,或者 rdp等解决。
- ecxi 和基于kvm的unraid pve 群晖等 不在对比之列
可以看到VirtualBox 对VMware相比缺点有:
- 3D性能VirtualBox 仅支持到DirectX9以及OpenGL3.0,DirectX 11 和 OpenGL 4.1 3D 加速图形支持
- 虚拟最新黑苹果,不支持2个以上核心,不过VMware的macos性能也很拉跨,半斤八两。
VirtualBox 对比kvm和hyper-v的缺点:
- 不支持显卡直通和vgpu
怎么选
- macos下运行win和macos,不用想 肯定首选是pd虚拟机。如果不玩游戏 自然也可以 VirtualBox 或者vmware fusion
- Linux下 性能考虑首选kvm,如果不习惯,就选VirtualBox 或者vmware 。无 图形界面的Linux不需要太多3d性能的话,首选VirtualBox
- win/Linux 需要虚拟化macos,首选VMware,VMware player其实就够了。
- 需要3D性能,显卡直通,那就 kvm hyper-v,exci unraid pve等
- 不需要直通,需要vgpu那就 hyper-v kvm
- 只是需要基本的3D性能,那就VMware 次选VirtualBox
- macos下运行win,首选Parallels Desktop
- Linux server下 首选kvm 和VirtualBox
- win下和Linux 混合商业用途,想省钱,那就首选VirtualBox 了。尤其是运行 不需要3D性能的服务的时候,图形化界面,多格式虚拟磁盘支持。不用usb 还许需要
- 正版window 不需要usb,或者只是简单u盘 rs232之类的,且不需要VMware的情况下(VMware和hyper共存的情况下,VMware性能超级拉跨),首选hyper-v
我的选择:宿主系统也用来工作,因主要使用的软件不支持Linux winpe后性能拉跨,所以宿主机是Windows。偶尔用macos处理ios签名等问题。有一个Linux server 开发环境但是一直开机的,方便和主linux server 同步以及开发版调试。偶尔替代主力server使用,这个server上有一些敏感内容,且商用。
也就是 最终就1-3个虚拟机而已,而且除了macos均没有3d需求,所以VirtualBox 成了首选