VirtualBox虚拟机转Hyper-V实操成功

将 VirtualBox 虚拟机迁移到 Hyper‑V,核心是把 VDI 虚拟磁盘 转换成 Hyper‑V 支持的 VHD/VHDX,再在 Hyper‑V 中新建虚拟机并挂载转换后的磁盘。

一、迁移前准备

  1. 关闭 VirtualBox 虚拟机:确保目标虚拟机已完全关机(不可挂起 / 快照)。
  2. 卸载 VirtualBox 增强工具(可选但推荐):进入虚拟机系统,卸载 VirtualBox Guest Additions,避免驱动冲突。
  3. 备份 VDI 文件 :复制一份原始 .vdi 文件,防止转换失败。
  4. 启用 Hyper‑V
    • 打开「控制面板 → 程序 → 启用或关闭 Windows 功能」
    • 勾选 Hyper‑V 及其子项 → 确定 → 重启电脑。

二、方法一:用 VBoxManage 转换 VDI → VHD(推荐,无需第三方工具)

1. 打开管理员命令提示符

Win+X → 选择「Windows 终端(管理员)」或「命令提示符(管理员)」。

2. 进入 VirtualBox 安装目录
复制代码
cd "C:\Program Files\Oracle\VirtualBox"
3. 执行转换命令(VDI → VHD)
复制代码
VBoxManage.exe clonemedium disk "你的VDI文件路径.vdi" "输出VHD文件路径.vhd" --format VHD

示例:

复制代码
VBoxManage.exe clonemedium disk "D:\VMs\Win10\Win10.vdi" "D:\VMs\HyperV\Win10.vhd" --format VHD

等待完成(时间取决于磁盘大小)。

4.(可选)VHD 转 VHDX(推荐,性能更好)

打开 Hyper‑V 管理器 → 右侧「操作」→「编辑磁盘」→ 下一步 → 选择刚生成的 .vhd → 下一步 → 选择 转换 → 下一步 → 格式选 VHDX → 选择动态扩展 / 固定大小 → 指定保存路径 → 完成。

三、在 Hyper‑V 中创建并挂载磁盘

  1. 打开 Hyper‑V 管理器 → 右侧「新建」→「虚拟机」。
  2. 关键内容:按向导设置:名称、位置、代数(一定选第 1 代 ,支持 UEFI)、内存、网络。否则虚拟机可能无法启动,我第一次就是选了第2代,导致折腾很久没启动起来。
  3. 关键步骤 :在「连接虚拟硬盘」时,选择 「稍后附加虚拟硬盘」 → 完成创建。
  4. 右键新建的虚拟机 →「设置」→「IDE 控制器 / SCSI 控制器」→「硬盘驱动器」→「添加」→ 浏览选择转换好的 .vhdx → 确定。
  • 虚拟机「设置」→「IDE 控制器(0)」→「硬盘驱动器」→ 确认挂载的是转换后的 VHDX 文件;
  • 关键项:若挂载在 SCSI 控制器,改到 IDE 控制器(第 1 代虚拟机对 IDE 兼容性更好)。

四、启动与修复(常见问题)

  1. 启动虚拟机:若提示「无法启动」,检查:
    • 第 1 代 / 第 2 代是否匹配(原系统是 BIOS 用第 1 代,UEFI 用第 2 代)。
    • 安全启动:第 2 代虚拟机 →「设置」→「安全」→ 取消勾选「启用安全启动」(Linux / 旧 Windows 通常需要)。
  2. 启动失败,提示系统启动文件,需要先用对应操作系统ISO镜像,先启动系统,不需要安装系统,只需要进入修复计算机命令提示界面

虚拟机「设置」→「DVD 驱动器」→ 挂载 Win10 安装 ISO → 启动虚拟机,从光盘进入「修复计算机」→「命令提示符」。执行以下命令修复引导:

复制代码
# 1. 标记系统分区为活动分区(MBR引导的核心)
diskpart
list disk          # 选系统盘(Disk 0)
select disk 0
list partition     # 选容量最大的主分区(通常是 Partition 1)
select partition 1
assign letter Z:   # 分配Z盘(提示已占用就换X:/Y:)
active             # 必须执行!标记为活动分区
exit

# 2. 强制重写引导(跳过所有复杂步骤)
bootsect /nt60 Z: /mbr /force  # 重写MBR,清除VirtualBox旧引导
bcdboot Z:\Windows /s Z: /f BIOS  # 重建BIOS引导配置

五、重启验证

  • 输入 exit 关闭命令提示符 → 移除 ISO 镜像 → 重启虚拟机;
相关推荐
小小ken2 天前
hyper-v 创建虚拟机时报错:无法访问配置存储: 找不到指定文件的虚拟磁盘支持提供程序。
hyper-v·虚拟机
小小ken2 天前
鸿蒙模拟器提示:未开启hyper-v。运行模拟器需要开启hyper-v虚拟化支持。
华为·harmonyos·hyper-v·虚拟机
BIBI20498 天前
VirtualBox 7.x 安装 Ubuntu 24 及增强功能配置、克隆虚拟机教程
linux·windows·ubuntu·环境搭建·安装教程·最佳实践·virtualbox
allanGold2 个月前
【virtualbox】如何修改磁盘存储的size
virtualbox·磁盘容量调整
皓月盈江2 个月前
Linux Debian13安装virtualbox-7.2_7.2.6-172322-Debian-trixie虚拟机平台无法运行的解决方法
linux·debian·虚拟机·virtualbox·debian13·virtualbox7.2.6·kernel driver
86Eric2 个月前
VirtualBox 增强功能(Guest Additions)安装与共享文件夹配置全攻略
virtualbox·guest additions·虚拟机共享
86Eric2 个月前
Vagrant 镜像打包与新环境部署全流程实操(避坑指南)
运维·vagrant·virtualbox·vagrantfile
大房身镇、王师傅3 个月前
【VirtualBox】VirtualBox 7.1.6 RockyLinux10 配置增强功能 设置共享目录
运维·服务器·virtualbox·rockylinux10
小小ken3 个月前
ubuntu通过virtualbox安装win10虚拟机简要步骤及排错
ubuntu·虚拟机·virtualbox