1. 先想清楚为什么要装 VMware Workstation 16,而不是直接上新版
1.1 三个真实场景决定了我还在用 16
我这台工作机上前前后后装过好几个版本的 VMware Workstation,最后长期留在桌面上的反而是 16。原因不复杂,不是新版不好,而是我的使用场景被 16 卡得死死的。第一个场景是维护老项目:客户环境里有跑 Windows 7 和 CentOS 7 的虚拟机,这些镜像在新版里迁移会碰到虚拟硬件版本升级、增强工具兼容性一类的小麻烦,16 的虚拟硬件版本是 18,导入导出都比较省心。第二个场景是宿主系统本身:我有一台机器还停在 Windows 10 的某个较早累积更新上,新版本对宿主系统版本要求更高,装上去直接报不满足条件。第三个场景是教学和演示,需要在一台机器上同时开三到四台虚拟机做网络实验,16 的资源调度对于这种轻量并发足够用了。
说这些不是劝谁都去用旧版本。如果你的宿主是全新的 Windows 11,虚拟化需求也就是跑个 Linux 做开发环境,那直接用当前主流的稳定版本更省事。我之所以还在折腾 16,纯粹是因为手上的镜像资产、脚本和习惯都沉淀在这个版本上,迁移成本大于收益。判断标准其实很简单:你现有的虚拟机镜像、自动化脚本、团队约定,是否已经和某个特定大版本绑定。绑定了就别轻易动,没绑定就上新版。
提醒:VMware Workstation 16 后期的小版本更新修了不少 Windows 11 宿主的兼容问题,如果你确实要用 16 配 Windows 11,尽量选 16.2 之后的版本号,早期 16.0、16.1 在开启内核隔离的机器上翻车概率明显更高。
1.2 版本能力边界和硬件门槛对照
装之前先搞清楚这东西到底要什么,能给你什么。Workstation 16 定位是桌面级虚拟化,宿主既可以是 Windows 也可以是 Linux,Guest 覆盖 Windows、Linux、BSD 等一大批系统。它的关键能力包括虚拟硬件版本 18、DirectX 11 图形加速、单虚拟机最高 32 个虚拟 CPU、128GB 虚拟内存、8GB 显存,还有快照、克隆、虚拟网络编辑器这一套。
下面这张表是我自己整理的门槛清单,照着核对比看官方文档快:
| 项目 | 最低要求 | 我的实际建议 |
|---|---|---|
| CPU | 64 位 x86,支持 VT-x 或 AMD-V | 近五年内的四核以上,必须在 BIOS 里打开虚拟化 |
| 内存 | 宿主 4GB | 宿主 16GB 起步,跑两台虚拟机建议 32GB |
| 磁盘 | 约 1.2GB 安装空间 | 系统盘留 20GB,虚拟机镜像单独放一块 SSD |
| 宿主系统 | Windows 10 1809 及以上 / 主流 Linux 发行版 | Windows 10 21H2 之后的版本更稳 |
| 显卡 | 支持 DirectX 10 | 需要 3D 加速就上独立显卡,并更新驱动 |
| 权限 | 管理员权限 | 必须,安装过程要注册服务和驱动 |
这里特别要说 CPU 那一栏。虚拟化支持是硬门槛,没有它连虚拟机都开不起来,报错信息就是那句经典的“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”。很多人以为是软件问题,其实是 BIOS 里那个开关没开,名字各家主板叫法不同,Intel 平台一般叫 Intel Virtualization Technology 或者 VT-x,AMD 平台叫 SVM Mode,都在 CPU 配置页里。
2. 装之前的准备工作,比安装本身更影响成败
2.1 宿主系统与硬件的核对清单
安装包下载之前,我会先花五分钟做一遍体检。第一步看系统版本,按 Win+R 输入 winver,确认内部版本号,这个数字决定了你手上的安装包能不能跑。第二步看内存和磁盘余量,任务管理器里瞄一眼,物理内存小于 8GB 的机器,装完之后同时开虚拟机体验会很差,不如先加内存。第三步看 CPU 虚拟化状态,任务管理器的“性能”标签页里点 CPU,右下角有个“虚拟化:已启用/已禁用”,这一行是最快的判断方式,比进 BIOS 翻菜单快得多。
第四步也是最多人忽略的一步:检查宿主上有没有和 VMware 抢虚拟化层的东西。Windows 平台上的 Hyper-V、虚拟机平台、Windows 沙盒、WSL2、内核隔离里的内存完整性、Credential Guard,只要开了其中任意一个,VMware 就拿不到 VT-x 的直接控制权。Workstation 16 虽然支持通过 Windows Hypervisor Platform 与 Hyper-V 共存,但代价是虚拟机的执行效率和嵌套虚拟化能力下降,跑 Docker 或者做内核实验的时候问题会更明显。
提示:如果你明确不需要 Hyper-V 那一套,最干净的做法是把“虚拟机平台”和“Hyper-V”功能关掉,然后在管理员命令行执行
bcdedit /set hypervisorlaunchtype off,重启。这句命令是关掉引导时的 hypervisor 加载,很多人关完功能但没执行这句,问题依旧。
2.2 安装包来源与文件完整性校验
安装包这件事我只说一句:从官方渠道获取,或者用单位采购的正版介质。第三方站点打包的“精简版”“绿色版”看起来省事,实际上经常被塞了静默安装的推广组件,更麻烦的是它们可能替换了驱动签名文件,装完之后虚拟机跑着跑着蓝屏,排查起来极其痛苦。我自己踩过一次,装完三天里蓝屏四次,最后重装系统才消停,从那以后只用原始安装包。
拿到安装包之后做一次校验。官方渠道一般会提供哈希值,Windows 上用 PowerShell 执行:
Get-FileHash -Algorithm SHA256 "C:\Downloads\安装包文件名.exe"把自己的结果和公布值逐位比对,不一致就别装了,重新下载。另外看一眼文件大小,16 的完整安装包通常在五百多兆,如果只有几十兆,那不是安装包,多半是下载器或者网页。
安装包建议放在非系统盘,比如 D 盘的一个固定目录,方便以后卸载重装时复用。安装过程中会解压临时文件,系统盘临时空间要留够,别等到 99% 的时候提示空间不足,那时候清理已经来不及了。
2.3 需要提前关闭或调整的系统设置
清单里有几项我会提前处理掉。杀毒软件的实时防护在安装期间建议临时关闭,因为安装过程要写驱动、注册服务,行为特征和某些恶意程序很像,容易被误拦,表现就是安装到一半进度条卡住不动或者回滚。安装完成后再打开,别关太久。
Windows 的快速启动功能也建议先关掉。这个功能会让关机变成休眠,某些驱动状态被带进下一次启动,出现过装完 VMware 之后虚拟网卡显示异常的情况。控制面板里电源选项里能找到这个开关,路径是“选择电源按钮的功能”里的“更改当前不可用的设置”。
还有就是目录命名。安装路径和虚拟机存储路径都不要带中文、空格和特殊符号,这不是 VMware 独有的毛病,很多虚拟化产品在路径解析上都出过问题。我自己统一用D:\VM\这样干净的路子,虚拟机镜像按系统名分子目录,几年下来没出过路径相关的怪问题。
3. 安装过程实录,从双击到第一次启动
3.1 安装向导每一步的选择逻辑
双击安装包,第一个界面是欢迎页和许可协议,勾选同意之后进入安装类型选择。这里有“典型”和“自定义”两个选项。我的建议是一律选自定义,理由很实际:典型安装会把虚拟机默认存到系统盘的“文档”目录下,几个镜像下去系统盘就红了;自定义里可以把安装路径和虚拟机存储路径分开设置,还能选择是否安装增强型键盘驱动、是否把控制台工具加进系统 PATH。后者对喜欢用命令行vmrun的人来说很有用。
安装路径我选D:\Program Files\VMware\,虚拟机存储路径选D:\VM\。这两个目录分开是有讲究的:程序目录将来升级、卸载会被整体操作,虚拟机镜像是你的数据资产,混在一起风险大。卸载的时候如果手滑勾了“删除配置”,哭都来不及。
接下来的几步是体验设置,包括是否启动时检查更新、是否加入客户体验改进计划、是否创建桌面快捷方式、是否在开始菜单建文件夹。更新检查建议保留,毕竟 16 的后续小版本确实修了不少兼容性问题,但可以关掉自动下载,改成手动确认,避免某天开机自动装了个大版本把环境搞乱。
3.2 关键服务与驱动的确认
点击安装之后会经历解压、复制文件、注册服务、安装驱动几个阶段,整个过程大概三到八分钟,取决于磁盘速度。装完之后不要急着启动,先做一遍服务检查。按 Win+R 输入 services.msc,找到以下四个服务:
| 服务名 | 显示名称 | 作用 |
|---|---|---|
| VMAuthdService | VMware Authorization Service | 权限认证,起不来虚拟机就启动失败 |
| VMwareDHCPService | VMware DHCP Service | 给仅主机和 NAT 网络分配地址 |
| VMwareNatService | VMware NAT Service | NAT 模式联网的核心 |
| VMUSBArbService | VMware USB Arbitration Service | USB 设备直通的仲裁 |
这四个服务正常状态下应该是“正在运行”,启动类型是“自动”。如果某个没起来,右键手动启动一次,看报什么错。最常见的失败原因是被安全软件拦住或者依赖服务没起来。DHCP 和 NAT 这两个服务如果被禁,虚拟机是能开机的,但网络会莫名其妙不通,排查时容易走弯路。
还有一个容易被忽视的点:虚拟网卡。安装完成后在“网络连接”里会多出两个网卡,VMnet1 和 VMnet8,分别对应仅主机模式和 NAT 模式。它们在物理网络里看不到,也不要手贱去改它们的 IP 或者禁用,改了之后虚拟网络编辑器里的设置会对不上,恢复起来需要重置整个虚拟网络。
3.3 授权与首次启动的配置
第一次启动会要求输入许可证密钥,或者选择试用。这里我必须说清楚:走正规渠道获取授权,单位采购的批量授权、官方试用期,都是合法路径。网上流传的那些“通用密钥”绝大多数已经失效或者被拉黑,输进去会提示无效,个别还能用的也属于违规使用,不建议碰。个人学习用途,官方提供的试用期完全够把流程摸熟。
输入密钥之后进入主界面。第一次打开我一般会做三件事:打开“编辑”菜单里的“首选项”,把默认虚拟机目录改成前面规划好的D:\VM\;在“内存”页里确认预留内存策略,默认是“调整所有虚拟机内存使其适应预留的主机 RAM”,这个选项对多开友好,建议保留;在“更新”页里把检查频率改成手动。
接着打开“虚拟网络编辑器”,这个工具需要管理员权限。在这里能看到 VMnet0(桥接)、VMnet1(仅主机)、VMnet8(NAT)三个默认网络。我的习惯是把 VMnet8 的子网改成不冲突的网段,比如物理网络是 192.168.1.0/24,就把 NAT 子网设成 192.168.138.0/24,避免出现虚拟机访问物理网段设备时路由混乱。改完点“应用”,它会重启 NAT 和 DHCP 服务,稍等十几秒。
4. 装完之后才算真正开始,虚拟机创建与网络配置
4.1 虚拟机硬件参数的分配原则
软件装好只是有了工具,真正决定体验的是虚拟机怎么配。我见过太多人给虚拟机分了 8 核 16G,结果宿主机卡成幻灯片。这里有一套我一直在用的经验算法,核心原则是宿主永远优先。
内存方面,宿主可用物理内存减去 4GB 作为虚拟机内存池。比如 16GB 的机器,池子是 12GB,那么开两台虚拟机就各分 4GB,留 4GB 给宿主系统和其他程序。8GB 的机器池子只有 4GB,只适合开一台 2GB 到 3GB 的轻量 Linux。CPU 方面,虚拟 CPU 总数不要超过物理核心数的一半,注意是物理核心不是逻辑线程。举个例子,8 核 16 线程的处理器,物理核心 8 个,单台虚拟机分 4 个 vCPU 是上限,实际给 2 个往往比给 4 个更流畅,因为虚拟 CPU 需要宿主调度,分太多会产生等待。
磁盘是另一回事。虚拟磁盘文件建议放在 SSD 上,容量按实际需求的 1.5 倍预留,因为快照、日志、内存转储文件都会占用空间。磁盘类型上,SCSI(LSI Logic)兼容性最好,NVMe 性能更好但需要 Guest 系统里有对应驱动,老系统可能识别不到。分配方式有两个选项:立即分配全部磁盘空间,还是按需增长。追求性能就选立即分配,追求节省空间就选按需增长,后者用久了会出现磁盘碎片,虚拟机内写大文件时性能下降明显。
4.2 三种网络模式的取舍
虚拟机网络这块,新手最容易糊里糊涂。Workstation 提供桥接、NAT、仅主机三种主要模式,选错了表现就是“虚拟机能上网但物理机 ping 不通它”或者反过来。
| 模式 | 虚拟机的网络身份 | 能否访问外网 | 物理机能否访问它 | 典型用途 |
|---|---|---|---|---|
| 桥接 | 和物理机同网段的独立主机 | 能 | 能 | 需要被局域网其他设备访问 |
| NAT | 藏在物理机后面的内网主机 | 能 | 能 | 日常开发、只想上网不想暴露 |
| 仅主机 | 只与物理机通信的封闭网络 | 不能 | 能 | 隔离测试、内网实验 |
我自己的默认选择是 NAT。理由很简单:换个办公地点、换个 Wi-Fi,NAT 模式的虚拟机完全不用改配置,桥接模式就得重新对齐网段,搞不好还会和公司网络的 DHCP 冲突,被网管找上门。只有当我要搭一个让同事能访问的测试服务时,才会临时切到桥接,并且手动指定一个网段内没被占用的静态 IP。
有一点要提醒:切网络模式之前先关机,运行中改容易导致虚拟网卡状态错乱。还有 NAT 模式下如果虚拟机拿不到地址,先看宿主上的 VMnet8 网卡是不是被禁用了,再看 VMware NAT Service 是否在运行,这两处占了故障原因的八成。
4.3 快照与克隆的使用节奏
快照这个东西,用得好是救命稻草,用不好是磁盘杀手。我的原则是在关键节点打快照,而不是随手打。典型的节点有三个:系统刚装完、增强工具装完、核心环境配置完。这三个点各打一个,之后所有实验都在最后一个快照之后做,搞砸了直接回滚,两分钟回到干净状态。
快照不是备份,这是很多人搞混的地方。快照文件是增量存储,依赖原始磁盘文件,一旦原始 vmdk 损坏或者被误删,快照全部失效。所以我从不用快照代替备份,重要镜像会定期用克隆功能导出一份完整的副本,存到另一块盘上。克隆分完整克隆和链接克隆,完整克隆是独立文件,占空间但安全;链接克隆共享父磁盘,省空间但父磁盘不能动。生产环境的镜像我只用完整克隆。
注意:快照会拖慢磁盘性能,尤其是快照链变长之后。我一般同时保留不超过三个快照,实验做完确认环境稳定了,就用“快照管理器”里的合并功能把中间层合并掉。
5. 常见问题与排查实录
5.1 安装阶段的高频报错
安装阶段最容易出问题的地方,我把这几年遇到的整理了一下。
第一个是“安装程序无法继续,因为此计算机上已安装 VMware 产品的旧版本”。这种情况多见于之前装过又没卸干净。正确的处理不是硬装,而是先到控制面板卸载,然后手动清理残留目录,包括C:\Program Files\VMware\、C:\ProgramData\VMware\、以及注册表里的HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.。清理之前记得导出注册表备份,手滑删错还有退路。
第二个是安装到一半报 1935 错误,提示程序集安装失败。这通常和 .NET Framework 组件损坏或者系统更新不完整有关。我的处理顺序是:先跑一遍系统文件检查sfc /scannow,再执行 DISM 的组件修复命令,两者都过一遍还不行,才考虑重装对应的 .NET 运行库。
sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth第三个是安装完成后启动虚拟机立刻报“此主机不支持虚拟化”。前面说过,先确认 BIOS 开关,再确认宿主上没有和它抢资源的虚拟化功能。有一类情况很隐蔽:笔记本用了某些厂商的虚拟化安全软件,它在固件层面就接管了 VT-x,这种情况下必须在 BIOS 里把相关选项关掉才能解决。
5.2 使用阶段的典型故障
装好之后的问题主要集中在网络和显示两块。
网络方面最典型的是虚拟机 ping 不通外网但能拿到 IP。这说明 DHCP 正常,问题出在 NAT 转发。检查顺序是:VMware NAT Service 是否运行、宿主防火墙是否拦截了 vmnet8 的流量、虚拟网络编辑器里 NAT 设置页的网关地址是否和虚拟机内配置一致。还有一种情况是能 ping IP 但解析不了域名,那就是虚拟机内的 DNS 配置问题,把 DNS 指向 NAT 网关地址通常就好了。
显示方面,最常见的是分辨率不对、窗口缩放发虚、拖放和剪贴板不工作。这三个问题的根因基本是同一个:增强工具没装或者版本不匹配。Windows 虚拟机装 VMware Tools,Linux 虚拟机现在更推荐用发行版自带的 open-vm-tools 包,比手动挂载安装镜像里的工具更省心。装完重启,分辨率和剪贴板问题基本一次性解决。
USB 设备识别不出来也很常见。检查 USB Arbitration Service 是否在跑,然后看虚拟机设置里 USB 控制器是不是启用状态,最后确认设备是不是被宿主的驱动独占。有些加密狗类的设备,插上后宿主先抢占了,需要在宿主的设备管理器里手动释放。
5.3 问题速查表
| 现象 | 最可能的原因 | 第一步动作 |
|---|---|---|
| 提示 VT-x 被禁用 | BIOS 虚拟化未开 | 进 BIOS 打开 VT-x/SVM |
| 提示与 Hyper-V 不兼容 | 宿主开启了虚拟化平台功能 | 关闭 Hyper-V 与内存完整性并执行 bcdedit |
| 虚拟机能上网,宿主 ping 不通它 | 用了 NAT 且宿主防火墙拦截 | 检查防火墙对 VMnet8 的规则 |
| 虚拟机拿不到 IP | DHCP 服务未运行或网卡被禁 | 启动 VMware DHCP Service |
| 拖放、剪贴板失效 | 增强工具未装 | 安装或重装 VMware Tools |
| 快照回滚后时间错乱 | Guest 时间同步机制 | 在设置里启用时间同步 |
| 虚拟机运行卡顿 | 内存或 vCPU 分配过量 | 按宿主一半原则下调配置 |
| 磁盘占用持续增长 | 快照链过长 | 用快照管理器合并 |
6. 踩过坑之后才明白的几件事
6.1 卸载和重装的正确姿势
这一条我吃过亏,所以放在最后重点说。很多人卸载 VMware 的流程是控制面板点卸载、重启、完事,然后重装发现各种诡异问题。实际卸载时要多做三步:卸载完成后检查C:\ProgramData\VMware\目录是否还在,这个目录存着虚拟网络配置和许可证信息,重装时如果残留,可能出现网络配置冲突;检查网络连接里 VMnet1、VMnet8 这两个虚拟网卡有没有被删干净,残留的虚拟网卡会占用网段导致新建的虚拟网络无法正常工作;最后检查设备管理器里有没有带感叹号的 VMware 相关设备,有的话卸载掉再重装驱动。
重装之前强烈建议把虚拟机镜像目录整个复制一份到别处,或者至少确认镜像没有被卸载程序动过。正常情况下卸载不会删虚拟机文件,但快捷方式和库里的记录会清掉,重新添加的时候别手滑指向了错误的目录。
6.2 长期维护的几个小习惯
用了几年下来,我总结了几个让这套环境稳定运行的习惯。第一,虚拟机镜像目录和安装目录永远分开,且镜像目录单独备份。我现在的做法是每周自动同步一次镜像目录到移动硬盘,快照文件不备份,只备份基础镜像,这样既省空间又能快速重建。第二,每台虚拟机建一个说明文件,记录系统版本、账号、静态 IP、用途、装了哪些关键软件,半年后回来看不至于一脸茫然。第三,不要在一台虚拟机上做所有实验,网络实验一台、开发环境一台、测试系统一台,互相隔离,出问题不影响其他的。
还有个小技巧:如果你经常需要在多台机器之间搬运虚拟机,尽量用 OVF/OVA 格式导出。这个格式是跨平台的,不依赖 VMware 专有的虚拟硬件版本,导到别的虚拟化平台上也能用。直接复制 vmdk 文件虽然也能用,但如果宿主的 Workstation 版本不同,第一次打开时会提示升级虚拟硬件版本,升级之后就降不回去了,这点要留意。
最后分享一个我现在的做法:装完系统、装完增强工具之后,立刻做一个完整克隆存成模板,以后所有新虚拟机都从这个模板克隆出来,省掉每次装系统、打补丁、装配置的时间。这个模板定期更新一次,既保证干净又保证不过时。