1. 为什么我现在推荐你用 Hyper-V:从选型开始说起
你可能也遇到过这种场景:电脑上装了一堆虚拟机软件,今天要跑 Linux,明天要在隔离环境测试软件,后天想顺便把 NAS 系统一起塞进去,结果机器越装越乱,性能越跑越差。
我前两年也是这么过来的。VMware Workstation 确实好用,但如果你的主力系统是 Windows 10 或 Windows 11 Pro/企业版/教育版,我越来越倾向于直接推荐你启用系统自带的 Hyper-V。这不是说 VMware 不行,而是 Hyper-V 在 Windows 生态下有几个“难以拒绝”的优势。
首先,Hyper-V 是微软原生集成在系统里的虚拟化平台,它不是一个独立安装的应用程序,而是 Windows 系统底层的一部分。这意味着你在系统更新时它会跟着一起维护,不会出现“VMware 新版发布了一个安全补丁,你得手动下载安装”这种情况。更重要的是,Hyper-V 属于 Type-1 虚拟机管理程序,它直接运行在硬件之上,Windows 本身在它眼里也只是一个“客户机”,所以虚拟机的性能损耗比 VMware Workstation 这种 Type-2 方案要小得多。日常开发、跑服务、测试系统,体感差异不大,但在高负载、网络吞吐密集的场景下,明显更稳。
其次,如果你是搞开发、做运维、研究网络安全或者日常需要开机自启一些服务的人,Hyper-V 有一个 VMware 免费版比不了的特性——和 Windows 系统的深度集成。虚拟机网络直接走虚拟交换机,共享文件夹、动态内存、检查点(快照)这些功能用起来都很顺手。再加上现在 WSL2 和 Docker Desktop 的底层全都是走 Hyper-V 架构的,你把 Hyper-V 打开,等于是一并解锁了 WSL2 和 Docker 的完整能力。
当然,它也不是没有门槛。Hyper-V 对 Windows 版本有严格限制,家庭版系统默认没有这个功能,需要手动通过命令方式强行开启。如果你正好是家庭版用户又不想重装系统,这篇教程里的命令行方案就是给你准备的。
这篇文章会从硬件要求确认开始,分别演示图形界面和命令行的完整开启流程,然后教你怎么建第一台 Windows 虚拟机,最后把我这些年踩过的坑整理成一份排查速查表。不管你之前有没有接触过虚拟机,照着操作都能把 Hyper-V 跑起来。
2. 开启前的准备工作:硬件、系统版本和 BIOS 设置
很多人卡在第一步,不是不会操作,而是电脑本身没满足条件。Hyper-V 的开启依托于 CPU 的虚拟化指令集,所以先花两分钟确认硬件和系统状态,能省去后面一堆莫名其妙的问题。
2.1 确认系统版本:Pro、企业版、教育版还是家庭版
Hyper-V 是微软给专业用户准备的功能,所以它对系统版本有明确门槛:
- Windows 10 专业版 / 企业版 / 教育版:支持,图形界面直接开启
- Windows 11 专业版 / 企业版 / 教育版:支持,图形界面直接开启
- Windows 10 / 11 家庭版:图形界面找不到 Hyper-V 功能,但可以通过命令行脚本强行开启(后面会细说)
- Windows 10 / 11 LTSC 版本:支持,但需要确认具体版本号
区分自己系统版本的方法很简单:右键点击“此电脑”选择“属性”,或者在运行框输入winver回车,就能看到完整的版本信息。
提示:如果你用的是家庭版,别急着重装系统。先看完这篇文章命令行部分,它能帮你把 Hyper-V 装上去,但后续有些功能(比如嵌套虚拟化)在家庭版下可能会有限制,这一点心里有数就行。
2.2 硬件要求:CPU、内存和系统架构
Hyper-V 对硬件的最低要求不算高,但有几个硬性指标必须满足。我建议你用下面这行命令一次性检查完,比在 BIOS 里翻半天快得多:
systeminfo | findstr /i "Hyper-V"如果输出结果里有四项要求全部显示“是”,说明硬件完全满足条件:
| 检查项 | 需要的结果 | 说明 |
|---|---|---|
| Hyper-V 要求 | 是 | CPU 支持虚拟化且当前已经开启 |
| 虚拟机监视器模式扩展 | 是 | CPU 支持 VMX(Intel)或 SVM(AMD)指令集 |
| 二级地址转换 | 是 | CPU 支持 EPT 或 NPT,用于内存虚拟化 |
| 数据执行保护 | 是 | DEP 必须开启,也就是 CPU 的 NX 或 XD 功能 |
如果哪一项显示“否”,需要重启电脑进入 BIOS/UEFI 设置界面,找到类似于“Intel Virtualization Technology”(Intel 平台)或“SVM Mode”(AMD 平台)的选项,将其设置为 Enabled。不同品牌主板上的叫法不同,但基本上是这三个关键词的组合:Virtualization、VT-x、SVM。另外确认一下“VT-d”也就是 I/O 虚拟化技术,也一并打开,后续给虚拟机直通物理设备时要用到。
内存方面,Hyper-V 本身占用很小,但你要在虚拟机里跑系统,建议物理机内存至少 8GB,16GB 是舒服的起步配置。举个例子,如果你要给虚拟机分配 4GB 内存,物理机最好留出 6GB 左右的空闲内存给宿主系统和其他应用,否则两边都卡。
硬盘空间同样需要预算。Windows 10/11 虚拟机装完系统加基础软件,动态扩展的 VHDX 文件也会占到二三十个 GB,建议你的系统盘预留 100GB 以上空间再开始折腾虚拟机。
3. 图形界面开启:最适合新手的 Windows 功能安装法
如果你的系统版本是专业版或以上,用图形界面开启 Hyper-V 是最直观、最稳妥的方式,整个操作全程不超过三分钟。
3.1 进入 Windows 功能面板的两种方式
第一种方式,最传统也最不容易出错:
- 按下
Win + R打开运行框 - 输入
control打开控制面板 - 点击“程序”——“启用或关闭 Windows 功能”
第二种方式更快,适合懒人:
- 按下
Win + S打开搜索框 - 直接输入“启用或关闭 Windows 功能”
- 点击匹配到的系统设置项,直接弹出功能列表
还有更极客一点的方式,在运行框里输入optionalfeatures.exe然后回车,这是 Windows 功能面板的程序路径,可以直接调出对应窗口。
3.2 勾选 Hyper-V 全家桶
在弹出的 Windows 功能列表里,找到“Hyper-V”这一项。它展开后有子选项,你需要确保以下两个核心组件都被勾选上:
- Hyper-V 管理工具:包括 Hyper-V 管理器、Hyper-V PowerShell 模块,这是你后续操作虚拟机的图形入口
- Hyper-V 平台:包括 Hyper-V 虚拟机监控程序和管理服务,这是虚拟化的核心驱动
很多人只勾了管理工具没勾平台,结果打开管理器之后发现“新建虚拟机”按钮是灰色的,折腾半天才发现少勾了一项。记住,这两项缺一不可。
勾选完成后点击“确定”,系统会开始自动配置功能。这里有一个几乎所有新手都会疑问的地方:安装过程中系统会提示“是否重新启动计算机”。这里建议直接选择重启,不要点“稍后重启”,因为大部分情况下 Hyper-V 相关驱动和服务的加载需要完整的重启流程,不重启直接继续用,后续容易出现各种莫名其妙的异常。
3.3 重启后验证 Hyper-V 是否安装成功
电脑重启进入桌面后,先别急着建虚拟机。按Win + S搜索“Hyper-V 管理器”并打开,如果能正常弹出管理界面,说明安装成功。
另外可以用命令验证一下核心服务的运行状态。以管理员身份打开 PowerShell,执行:
Get-Service vmms如果返回的 Status 是 Running,说明虚拟机管理服务已经正常运行。vmms这个服务是 Hyper-V 的大脑,它挂了管理器界面打不开,虚拟机也没法启动。
到这一步,图形界面开启 Hyper-V 的流程就走完了。整个过程看着简单,但有些人可能会在安装过程中遇到“Windows 无法完成请求的更改”之类的报错,这个我放到后面第 6 节的排查部分专门讲。
4. 命令行开启:一条命令走天下和家庭版专用方案
图形界面方便归方便,但有两个场景它不顶用:一是你的系统是 Windows 家庭版,功能列表里压根没有 Hyper-V 这个选项;二是你需要批量在多台电脑上部署 Hyper-V,一台台去点勾选框累死人。这两种情况都需要命令行出场。
4.1 用 DISM 命令快速开启 Hyper-V(适用于专业版及以上)
DISM 是 Windows 自带的部署映像服务和管理工具,用它开启 Windows 功能的语法非常简洁。以管理员身份打开 PowerShell 或命令提示符,执行下面这条命令:
DISM /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V-All注意,这行命令的大小写不重要,DISM 不区分大小写。/Online表示针对当前正在运行的系统操作,/FeatureName:Microsoft-Hyper-V-All是 Hyper-V 全部功能的总开关,它会自动把管理工具、平台、虚拟机监控程序等所有 Hyper-V 组件一次性装上。执行完成后按提示重启电脑即可。
如果只想装其中一部分,可以拆开来:
DISM /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V-Tools-All DISM /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V-Hypervisor第一行装管理工具,第二行装虚拟机监控程序。但说实话,日常使用不需要拆这么细,直接Microsoft-Hyper-V-All最省事。
4.2 用 PowerShell 的 Enable-WindowsOptionalFeature 开启
同样的事情用 PowerShell 来做,命令稍微长一点,但更容易自定义:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All执行后系统会提示是否现在重启,输入 Y 即可。这条和上面 DISM 命令的效果完全一样,你可以根据自己的命令行习惯选一种。
4.3 家庭版强行开启 Hyper-V 的脚本方案
这就是前面提到的“家庭版救星”了。Windows 家庭版的功能清单里屏蔽了 Hyper-V,但底层文件其实还是存在系统里的。我们可以通过 DISM 指定源文件路径的方式,绕过图形界面的限制,强制安装 Hyper-V 组件。
先说原理:在家庭版系统里,Windows 功能的安装源文件存放在 WinSxS 组件库里,只是没有在功能列表中展示。DISM 命令配合/Source参数,可以直接从组件库调取这些文件进行安装。
具体操作步骤如下:
- 以管理员身份打开记事本,写入以下内容:
@echo off pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL pause将文件另存为
enable-hyperv.cmd,编码选择 ANSI 或 GB2312,因为批处理脚本使用中文注释时如果编码不对会出现乱码导致命令失效。如果你不放心,直接把代码里的中文字符去掉,只留英文和符号。右键选择“以管理员身份运行”。
脚本执行期间会有大量 DISM 输出信息,看到最终出现“部署映像服务和管理工具”以及“操作成功完成”之类的字样,表示组件安装成功,重启电脑即可。
这个脚本的原理是遍历系统组件库中所有包含 Hyper-V 关键词的 .mum 文件,逐个用 DISM 添加到当前系统,最后再启用整个 Hyper-V 功能。由于家庭版没有图形开关,这种“硬装”方式是目前社区里最被认可的方案之一。
注意:家庭版强行安装 Hyper-V 后,Hyper-V 管理器可以正常使用,但你可能会遇到“虚拟机监控程序已经运行”导致其他虚拟化软件无法使用的问题,以及部分系统组件异常的情况。这个方案适合需要临时在家庭版上跑虚拟机的场景,如果你长期重度使用虚拟化,我还是建议换成专业版系统,省心得多。
4.4 命令行确认是否安装成功
重启后,以管理员身份打开 PowerShell,执行:
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All如果输出里的 State 是 Enabled,就说明 Hyper-V 已经成功开启了。另外也可以直接用之前那个systeminfo命令再查一遍,如果“Hyper-V 要求”这一项变成了“是”,同时系统会多出一行“已检测到 Hyper-V”,说明 virtualization 层已经正常加载。
5. 创建第一台虚拟机:从虚拟交换机到系统安装全流程
Hyper-V 装好了,接下来就是真正干活的部分——建一个能跑能用的虚拟机。这个过程中有三件套要准备:虚拟交换机、虚拟机配置、系统镜像。哪个环节出了问题都会影响体验,我逐个说清楚。
5.1 先建虚拟交换机:三种网络模式怎么选
打开 Hyper-V 管理器,在右侧操作栏点击“虚拟交换机管理器”,这里会出现三种类型的虚拟交换机。它们是整个虚拟机网络的核心,选错了虚拟机要么没有网,要么和物理机连不通。
- 外部网络:虚拟机通过物理网卡直接接入局域网,可以访问外网,也可以被局域网内其他设备访问。如果你需要让虚拟机像一个独立主机一样存在,选这个。
- 内部网络:虚拟机只能和宿主机通信,虚拟机和虚拟机之间可以互通,但不能直接访问外部网络。适合做本地测试、调试,需要上网的话可以在宿主机上开启网络共享。
- 专用网络:虚拟机之间可以通信,但不能和宿主机通信,也不能访问外部网络。这个场景比较窄,一般用于完全隔离的测试环境。
作为普通用户,直接选“外部网络”然后点击“创建虚拟交换机”。创建时要注意,Hyper-V 会默认选定一块物理网卡作为桥接对象,通常是你当前正在上网的那块网卡(比如“Realtek PCIe GbE Family Controller”或“Intel I225-V”)。创建完成后,你本机的“网络连接”里会多出一个名为“vEthernet (xxx)”的虚拟网卡,这是正常的,不要删除它。
这里有一个很常见的坑:创建外部虚拟交换机之后,宿主机网络会短暂断开重连,表现为网络图标转圈几秒钟。如果你刚好在下载东西或者远程连这台电脑,建议先停下手头的操作。另外,在 WiFi 环境下使用外部交换机,有时候会出现宿主机网速明显下降的情况,这个属于 Hyper-V 虚拟网卡和无线网卡驱动的兼容性问题,可以通过更新无线网卡驱动缓解。
5.2 配置虚拟机参数:内存、磁盘和处理器
虚拟交换机搞定后,在 Hyper-V 管理器右侧点击“新建”——“虚拟机”,会弹出创建向导。这里有几个参数需要认真填:
代数选择:这一步很多人不知道该怎么选。Hyper-V 提供第一代和第二代两种虚拟机代数。第二代支持 UEFI 启动、安全启动、更大的磁盘容量和更快的启动速度,适合安装 Windows 10/11、Server 2016 及以上版本。如果你要安装老系统(Windows 7 及以下、32 位系统),必须选第一代,因为第二代 BIOS 里根本不支持这些老系统。另外第一代虚拟机用的是 IDE 控制器,某些老系统镜像安装时会报错缺少大容量存储驱动,这种情况多半就是代数选错了。
内存:根据你要跑的系统决定。Windows 10/11 虚拟机建议给 4096MB(4GB)起步,8GB 会更流畅。启动内存(启动 RAM)和最大内存可以不同,比如启动时分配 4GB,随着负载增加自动扩展到 8GB,但开启动态内存后要注意,最大内存设太大(比如超过物理机内存的 70%),可能会导致宿主机内存不足。
网络:选择刚创建的外部虚拟交换机。
虚拟硬盘:创建时会让你选磁盘大小,建议按需要设置。Windows 10/11 虚拟机建议 60GB 以上,因为系统本身加更新会占掉三四十 GB。注意默认硬盘格式是 VHDX,文件格式是动态扩展——意思是磁盘文件一开始很小,虚拟机里数据变多,文件才慢慢变大,所以不用怕创建时占满你实际硬盘空间。
安装选项:这里可以选择“从可启动的 CD/DVD-ROM 安装操作系统”,然后选择你下载好的 Windows ISO 镜像文件。没有 ISO 也可以先建空虚拟机,后面在虚拟机设置的“DVD 驱动器”里再挂载镜像。我比较推荐先建好虚拟机,再单独设置光驱加载镜像,因为后续更换系统镜像时操作更灵活。
以上配置保存后,一台基础的虚拟机就创建完成了。右键虚拟机选择“启动”,再点击“连接”,就能看到虚拟机的显示窗口,接下来的系统安装流程和在物理机上装 Windows 一模一样。
5.3 安装系统时最容易被忽略的增强功能
虚拟机里装完 Windows 系统后,你会发现一个巨难受的问题:鼠标在虚拟机和宿主机之间切换要按Ctrl+Alt+左方向键,窗口分辨率锁定 1024x768,文件拖拽更是想都别想。这是因为虚拟机里缺了“Hyper-V 集成服务”(也叫增强功能)。
安装方法很简单:在虚拟机窗口上方的操作菜单里点击“插入集成服务安装盘”,然后在虚拟机系统里打开 DVD 驱动器,运行安装程序。集成服务装完后重启虚拟机,分辨率会自适应窗口大小,鼠标可以自由移出移入,剪贴板可以共享,文件也可以拖拽复制了。
这一步是很多人容易漏掉的,我在社区里见过不少初学者因为鼠标切不出去、分辨率调不了而误以为 Hyper-V 有问题,其实只是集成服务没装。
6. 常见问题与排查技巧实录:这些年我踩过的坑
Hyper-V 用久了,各种问题我基本都轮过一遍。这一节把高频问题和排查思路整理成速查表,你如果遇到相同症状,可以直接对着查。
6.1 常见问题速查表
| 问题现象 | 可能原因 | 排查与解决方式 |
|---|---|---|
| Windows 功能面板里找不到 Hyper-V | 系统版本是家庭版/教育版基础版 | 使用 4.3 节的命令行脚本强行开启,或者直接升级到专业版 |
| 启动虚拟机提示“虚拟机监控程序未运行” | BIOS 未开启虚拟化、或系统还停留在旧版本的 Windows | 重启进入 BIOS 开启 VT-x/SVM,确认 Hyper-V 平台组件已完全安装并重启过 |
| 虚拟机启动后黑屏 | 集显驱动问题、或集成了不兼容的启动模式 | 二代虚拟机检查显示模式是否为“标准”,更新虚拟机的显示驱动程序;一代虚拟机换用第二代模板重新建 |
| 外部虚拟交换机创建后宿主机上不了网 | 物理网卡桥接失败、或宿主机获得了错误的 IP | 把物理网卡和 vEthernet 虚拟网卡的 TCP/IP 设置改为自动获取,或者手动设置静态 IP 确保同网段 |
| 虚拟机网络连接显示“未识别的网络” | 虚拟交换机配置不对 | 在虚拟交换机管理器中确认使用“外部网络”并选择了正确的物理网卡,必要时删除重建交换机和虚拟网卡 |
| 宿主机磁盘空间越来越小 | 动态扩展磁盘文件持续增长 | 在虚拟机内部运行磁盘清理,然后使用“Hyper-V 管理器”——“编辑磁盘”里的压缩功能,重新压缩 VHDX 文件 |
| 复制虚拟机文件到其他电脑后无法启动 | 没有使用“导出”而直接复制了 VHDX 文件 | 正确的做法是右键虚拟机选择“导出”,导出完成后再拷贝;直接复制文件需要在目标机器上新建虚拟机并指向该磁盘 |
| 第二代虚拟机无法从 U 盘启动 | 二代 BIOS 不直接支持 U 盘启动 | 改为挂载 ISO 镜像安装,或者改用第一代虚拟机 |
| 系统更新后虚拟化突然不能用了 | Windows 更新与固件、驱动的冲突 | 检查 Windows 版本更新补丁,重启电脑;如果多系统共存,确认另一个引导系统的内存完整性功能是否关闭 |
6.2 报错“0x80370102”的完整排查过程
在所有 Hyper-V 报错里,见最多的就是启动虚拟机时提示“无法启动虚拟机,因为虚拟机监控程序未运行(0x80370102)”。这个报错信息很多人在网上问,问题根源也比较集中。
我排查这类问题一般按照下面的顺序来:
确认 BIOS 虚拟化已开启。重启进 BIOS,检查 Virtualization Technology 是否为 Enabled,同时确认 Hyper-V 相关数据执行保护设置没有关闭。
确认 Hyper-V 服务已启动。以管理员身份打开 PowerShell 输入:
Get-Service vmms如果不是 Running 状态,执行:
Start-Service vmms并设置开机自动启动:
Set-Service vmms -StartupType Automatic检查是否安装了 Windows Hypervisor Platform(Windows 虚拟机监控程序平台)。在 Windows 功能面板里找到这个功能,勾选它并重启。这个功能有时候没有被 Hyper-V 安装流程自动带上,但它和 Hyper-V 的运行紧密相关。
如果以上三步都正常,可能是系统组策略或内存完整性(内核隔离)影响了虚拟化层的加载。在“Windows 安全中心”——“设备安全性”——“内核隔离”中查看“内存完整性”选项,如果它是开启状态,先关闭它,重启后再试一次。这个选项在某些硬件组合下会和 Hyper-V 的虚拟化层冲突,导致虚拟机监控程序无法加载。
最后再确认一下 Windows 是否安装了所有必需更新。有些老版本 Windows 10 对 Hyper-V 的支持有已知 bug,打了后续补丁才修复。
整套排查下来,百分之八九十的 0x80370102 问题都能解决。如果你遇到的是其他少见情况,记住一个基本思路:报错信息里的错误码可以拿到微软官方文档或者社区里搜,比盲猜管用得多。
6.3 导出、备份和删除虚拟机的正确姿势
Hyper-V 虚拟机的备份有两种方式。一种是检查点(Snapshot),相当于虚拟机的历史快照,可以在虚拟机设置界面快速创建和回滚。我建议在系统装完、集成服务装好、所有配置调好这个时间点创建一个“干净基线”检查点,后面不管系统怎么折腾,随时都能回退到这个状态。
另一种方式是导出。右键虚拟机,选择“导出”,Hyper-V 会把虚拟机的配置、磁盘、检查点打包成一个文件夹,拷贝到别的机器后用“导入虚拟机”就能完整恢复。注意导出时必须先关闭虚拟机,否则导出的是不一致的状态。
删除虚拟机时,如果你勾选了“删除虚拟机”但没有勾选“删除虚拟硬盘文件”,那 VHDX 文件还会留在磁盘上。这个机制有好处也有坏处——好处是你删了虚拟机还能用磁盘文件重新建一个,坏处是你以为删干净了结果磁盘空间没释放。建议定期检查一下虚拟硬盘的存放目录,免得硬盘被撑爆。
7. 几个提升 Hyper-V 使用体验的进阶技巧
写到快结尾了,再分享几个我平时觉得特别有用的操作技巧。这些算不上什么惊天大招,但用起来很顺手。
7.1 用 PowerShell 一行命令管理虚拟机
Hyper-V 管理器是图形界面,但虚拟机多起来之后,用命令行批量管理效率高得多。常用命令我整理几个:
# 查看所有虚拟机及其运行状态 Get-VM # 启动指定虚拟机 Start-VM -Name "Win11Test" # 关闭指定虚拟机(类似点击关机按钮) Stop-VM -Name "Win11Test" # 强制关闭指定虚拟机(类似拔电源) Stop-VM -Name "Win11Test" -Force # 创建检查点 Checkpoint-VM -Name "Win11Test" -SnapshotName "BeforeInstall" # 查看虚拟机的 IP 地址 Get-VM -Name "Win11Test" | Get-VMNetworkAdapter如果你经常要开很多虚拟机做测试,可以写一个 PowerShell 脚本把常用的虚拟机全部启动起来,比一台台点快很多。
7.2 动态内存和检查点配合使用
动态内存是个好东西,但要配合检查点才有最佳效果。我给虚拟机开动态内存后,通常会把最小内存设低一点,比如 1GB,最大内存设到 8GB。虚拟机空闲的时候只占 1GB 物理内存,负载上来了再自动扩。配合上前面说的“装机完成后创建基线检查点”,后面内存不够用时就加大内存配置,系统乱了就回滚,两边都不耽误。
7.3 嵌套虚拟化:把 Hyper-V 放进虚拟机里
如果你需要在虚拟机里再跑一个 Hyper-V(也就是嵌套虚拟化,比如用虚拟机测试集群、调试实验环境),需要在宿主机上对虚拟机做一次配置。先关闭虚拟机,然后在 PowerShell 里执行:
Set-VMProcessor -VMName "Win11Test" -ExposeVirtualizationExtensions $true执行完这个命令再启动虚拟机,里面的 Windows 就能再开 Hyper-V 了。这个功能在 VMware 里对应“虚拟化 Intel VT-x/EPT 或 AMD-V/RVI”,在 Hyper-V 里命令形式就是上面这条。不过性能肯定会打折,嵌套虚拟化只适合测试用,正式业务别这么干。
7.4 使用持久化 IP 配置避免网络迷局
外部虚拟交换机桥接成功后,虚拟机和宿主机之间的关系是靠物理网卡连接的。但如果你频繁切换 WiFi 和有线上网,虚拟机的 IP 可能会因 DHCP 重新分配而改变,影响到用固定 IP 访问虚拟机的场景。
给虚拟机设置静态 IP 的方法和物理机一样:在虚拟机系统内打开网络适配器设置,手动指定一个与宿主机同一网段的 IP。要注意的是,如果 DHCP 把这个 IP 分给了别的设备,就会造成 IP 冲突,所以开静态 IP 之前先确认网段内没有占用。
7.5 在非管理员会话中使用 Hyper-V 管理器的注意事项
日常会话如果用的是标准用户而不是管理员,打开 Hyper-V 管理器后可能会提示没有权限。默认情况下,Hyper-V 管理员组的成员才能完整控制虚拟机的创建和启动。你可以把当前用户加入 Hyper-V 管理员组,方法是打开“计算机管理”——“本地用户和组”——“组”,找到“Hyper-V 管理员”组,把用户添加进去。加入后退出重新登录,状态就会生效。这比每次用管理员身份打开管理器要方便得多。
最后再说一句,Hyper-V 这套东西上手之后,你可能会发现它比很多第三方虚拟机软件更适合 Windows 环境。不要被系统版本限制吓到,也不要被命令行劝退。我在第一次用命令行强行给一台家庭版电脑装上 Hyper-V 的时候也忐忑过,但跑起来之后发现一切正常。虚拟化的路子很宽,这篇文章只是起点,后续你还可以深入研究虚拟网络、存储池、容器编排,这些在 Hyper-V 上都能找到对应的入口。