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 镜像 → 重启虚拟机;
相关推荐
allanGold1 个月前
【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
大房身镇、王师傅2 个月前
【VirtualBox】VirtualBox 7.1.6 RockyLinux10 配置增强功能 设置共享目录
运维·服务器·virtualbox·rockylinux10
小小ken2 个月前
ubuntu通过virtualbox安装win10虚拟机简要步骤及排错
ubuntu·虚拟机·virtualbox
liulilittle2 个月前
Windows 11 Hyper-V 虚拟机双网卡网络中断无法恢复问题
网络·windows·虚拟化·hyper-v·vps·vm·vds
allanGold3 个月前
【virtualbox】【windows】已有虚拟机存储容量调整方法
windows·virtualbox
韩曙亮3 个月前
【错误记录】VirtualBox 中安装 Ubuntu 系统无法跨虚拟机进行复制操作 ( 解决方案 - 启用 “ 共享粘贴板 “、“拖动“ 双向操作 )
linux·运维·ubuntu·virtualbox·ros 2