阿里云 ECS(Ubuntu 18.04)把 系统盘转换成 Hyper-V 可用的 VHD
可以,阿里云 ECS(Ubuntu 18.04)把 系统盘转换成 Hyper-V 可用的 VHD,标准做法是:
👉 新增一块临时云盘 → dd 克隆系统盘 → qemu-img 转换 VHD
下面给你一套 运维可直接执行流程(适合 Linux 运维)。
一、前提确认(非常重要)
先确认磁盘:
lsblk
假设:
| 磁盘 | 作用 |
|---|---|
| /dev/vda | 40G 系统盘 |
| /dev/vdb | 新增临时云盘 |
⚠️ 后面全部按这个示例写,实际请替换。
二、安装转换工具
Ubuntu18 默认没有 qemu-img:
apt update
apt install -y qemu-utils
确认:
qemu-img --version
三、临时云盘分区 + 挂载
1️⃣ 分区
fdisk /dev/vdb
操作:
n
p
1
回车
回车
w
2️⃣ 格式化
推荐 ext4:
mkfs.ext4 /dev/vdb1
3️⃣ 挂载
mkdir /mnt/tempdisk
mount /dev/vdb1 /mnt/tempdisk
确认:
df -h
四、克隆系统盘(生成 RAW)
⚠️ 必须用整盘 /dev/vda,不是分区
dd if=/dev/vda of=/mnt/tempdisk/system.raw bs=16M status=progress
参数说明:
| 参数 | 作用 |
|---|---|
| if | 输入磁盘 |
| of | 输出文件 |
| bs=16M | 提升复制速度 |
| status=progress | 显示进度 |
预计时间:
-
40G SSD ECS
-
约 5~15 分钟
五、转换为 Hyper-V VHD
1️⃣ 固定大小 VHD(强烈推荐)
Hyper-V 兼容性最好:
qemu-img convert -f raw -O vpc -o subformat=fixed,force_size \
/mnt/tempdisk/system.raw \
/mnt/tempdisk/system.vhd
2️⃣ 可扩展 VHD(可选)
qemu-img convert -f raw -O vpc \
/mnt/tempdisk/system.raw \
/mnt/tempdisk/system.vhd
六、验证 VHD
qemu-img info /mnt/tempdisk/system.vhd
应该看到:
file format: vpc
七、压缩(强烈建议)
tar -czvf system_vhd.tar.gz system.vhd
八、下载回本地
方式:
方案1(推荐)
阿里云:
-
上传 OSS
-
再下载
方案2
直接 scp:
scp root@ecs-ip:/mnt/tempdisk/system_vhd.tar.gz .
九、Hyper-V 启动注意事项(90%人会踩坑)
创建 VM 时:
Generation 选择
👉 Ubuntu18 建议:
Generation 1
不要选 Gen2(UEFI可能无法启动)。
启动前修复(强烈建议在 ECS 先做)
apt install -y linux-image-virtual linux-tools-virtual
安装:
hv_vmbus
hv_storvsc
hv_netvsc
十、企业级推荐方案(比 dd 更专业)
如果你是生产环境迁移,我更建议:
阿里云镜像导出 → qcow2 → vhd
优点:
-
不停机
-
一致性好
-
可自动修复分区
如果你愿意,我可以给你:
1️⃣ ✅ 一键系统盘转 Hyper-V VHD 脚本(生产级)
2️⃣ ✅ 阿里云 ECS → Hyper-V 无法启动的修复大全(90%问题覆盖)
3️⃣ ✅ Gen1 / Gen2 选择与 grub 修复流程图
4️⃣ ✅ Hyper-V 启动蓝屏/Kernel Panic 专业排查手册
直接告诉我 👍
No Comments