四种镜像文件在各操作系统的使用用法及区别
1. 引言
在装机、系统维护、虚拟机部署和嵌入式开发中,我们经常会遇到各种「镜像文件」:ISO、IMG、VHD/VHDX、QCOW2……它们看起来都是「一个文件装下整个系统」,但格式、用途、挂载方式和适用操作系统却差别很大。
本文围绕最常见的四种镜像文件格式,讲清三件事:
- 每种格式是什么、内部结构如何;
- 在 Windows、Linux、macOS 上分别怎么用(挂载、写入、转换、启动);
- 四种格式之间的核心区别与选型建议。
说明:本文以常见发行版与工具链为例,命令中的设备名(如
/dev/sdX、/dev/disk2)请务必替换为你自己的实际设备,写盘操作不可逆,操作前请确认目标设备。
2. 四种镜像格式速览
| 格式 | 典型后缀 | 本质 | 常见用途 | 是否可直接挂载 |
|---|---|---|---|---|
| ISO 9660 | .iso | 光盘文件系统镜像 | 系统安装盘、光盘分发 | 是(只读) |
| 原始磁盘镜像 | .img、.raw | 磁盘/分区的逐字节拷贝 | 树莓派系统、嵌入式固件、磁盘备份 | 视内容而定 |
| VHD / VHDX | .vhd、.vhdx | 虚拟硬盘(含分区表) | Hyper-V、VirtualBox、Windows 备份 | 是(Windows 原生) |
| QCOW2 | .qcow2 | QEMU 写时复制虚拟磁盘 | KVM/QEMU、OpenStack、云镜像 | 需 qemu-nbd 等工具 |
一句话概括:ISO 是「光盘」,IMG 是「裸磁盘」,VHD/VHDX 是「微软系虚拟硬盘」,QCOW2 是「QEMU 系虚拟硬盘」。
3. ISO 镜像:光盘文件系统镜像
3.1 格式特点
ISO 9660 是光盘标准文件系统,.iso 文件就是一张光盘的完整镜像,通常只读。它内部只有文件系统,没有分区表(部分混合 ISO 例外,如支持 UEFI 启动的镜像会带 El Torito 引导记录)。
3.2 Windows 下的用法
Windows 10/11 原生支持双击挂载 ISO:
# 挂载 ISO,返回盘符
$mount = Mount-DiskImage -ImagePath "D:\ubuntu-24.04-desktop-amd64.iso" -PassThru
($mount | Get-Volume).DriveLetter
# 卸载
Dismount-DiskImage -ImagePath "D:\ubuntu-24.04-desktop-amd64.iso"
制作启动 U 盘可借助 Rufus 或 dd 类工具;注意 Windows 下写盘会清空目标 U 盘。
3.3 Linux 下的用法
# 只读挂载到目录
sudo mkdir -p /mnt/iso
sudo mount -o loop ubuntu-24.04-desktop-amd64.iso /mnt/iso
ls /mnt/iso
# 卸载
sudo umount /mnt/iso
# 写入 U 盘(危险操作,确认设备名)
sudo dd if=ubuntu-24.04-desktop-amd64.iso of=/dev/sdX bs=4M status=progress oflag=sync
3.4 macOS 下的用法
# 挂载(macOS 会自动挂载到 /Volumes)
hdiutil attach ubuntu-24.04-desktop-amd64.iso
# 卸载
hdiutil detach /Volumes/Ubuntu\ 24.04.1\ LTS\ amd64
4. IMG 镜像:原始磁盘镜像
4.1 格式特点
.img(也叫 raw 镜像)是磁盘或分区的逐字节拷贝,没有统一规范:它可能只是一个文件系统(如 FAT32 分区镜像),也可能包含完整分区表(MBR/GPT)和多个分区。树莓派、香橙派等单板机的系统镜像基本都是这种格式。
因为「裸」,它体积大、不支持快照,但兼容性最好,几乎所有工具都能识别。
4.2 Windows 下的用法
Windows 不能直接双击挂载任意 IMG。常见做法:
- 用 7-Zip 打开查看内容(仅限单文件系统镜像);
- 用 Win32DiskImager / balenaEtcher 写入 SD 卡;
- 用
diskpart配合虚拟磁盘挂载(需先转换为 VHD)。
# 用 diskpart 将 IMG 转为 VHD 后挂载(示例思路)
# 1) 创建 VHD 并写入 IMG 内容,2) attach vdisk
4.3 Linux 下的用法
# 若 IMG 是单分区文件系统镜像
sudo mount -o loop raspios.img /mnt/img
# 若 IMG 含分区表,先看分区偏移
sudo fdisk -l raspios.img
# 假设第一分区起始扇区 8192,扇区大小 512
sudo mount -o loop,offset=$((8192*512)) raspios.img /mnt/img
# 写入 SD 卡(危险操作)
sudo dd if=raspios.img of=/dev/sdX bs=4M status=progress oflag=sync
4.4 macOS 下的用法
# 查看镜像信息
hdiutil imageinfo raspios.img
# 挂载(raw 镜像需指定格式)
hdiutil attach -imagekey diskimage-class=CRawDiskImage raspios.img
# 写入 SD 卡(先 diskutil list 确认磁盘号)
diskutil unmountDisk /dev/disk2
sudo dd if=raspios.img of=/dev/rdisk2 bs=4m
5. VHD / VHDX:微软系虚拟硬盘
5.1 格式特点
VHD 是微软的虚拟硬盘格式,VHDX 是其升级版(支持最大 64TB、4KB 逻辑扇区、断电保护)。两者都包含完整分区表,可动态扩展、可做差异盘,是 Hyper-V 的原生格式,VirtualBox 也支持。
5.2 Windows 下的用法
Windows 原生支持挂载 VHD/VHDX:
# 挂载
Mount-VHD -Path "D:\data.vhdx"
# 查看磁盘
Get-Disk | Where-Object PartitionStyle -ne 'RAW'
# 卸载
Dismount-VHD -Path "D:\data.vhdx"
也可在「磁盘管理 → 操作 → 附加 VHD」中图形化挂载。
5.3 Linux 下的用法
Linux 需借助 qemu-nbd 或 libguestfs:
# 加载 nbd 模块并连接
sudo modprobe nbd max_part=16
sudo qemu-nbd -c /dev/nbd0 data.vhdx
sudo partprobe /dev/nbd0
# 挂载分区
sudo mount /dev/nbd0p1 /mnt/vhd
# 卸载
sudo umount /mnt/vhd
sudo qemu-nbd -d /dev/nbd0
5.4 macOS 下的用法
macOS 无原生支持,通常通过 VirtualBox/VMware 挂载,或安装 qemu 后用 qemu-nbd(需额外配置 nbd 支持),实际使用较少。
6. QCOW2:QEMU 写时复制镜像
6.1 格式特点
QCOW2(QEMU Copy-On-Write v2)是 KVM/QEMU 的默认磁盘格式,支持:
- 稀疏分配:文件按需增长,不预占全部空间;
- 快照:内置快照与外部快照;
- 压缩与加密;
- 后备文件(backing file):基于模板盘快速创建差异盘。
它是 OpenStack、Proxmox、多数云厂商镜像的标准格式。
6.2 Linux 下的用法
# 查看信息
qemu-img info ubuntu.qcow2
# 创建 20G 镜像
qemu-img create -f qcow2 disk.qcow2 20G
# 基于模板创建差异盘
qemu-img create -f qcow2 -b base.qcow2 -F qcow2 overlay.qcow2
# 挂载(需 nbd)
sudo modprobe nbd max_part=16
sudo qemu-nbd -c /dev/nbd0 ubuntu.qcow2
sudo mount /dev/nbd0p1 /mnt/qcow2
sudo umount /mnt/qcow2
sudo qemu-nbd -d /dev/nbd0
# 格式转换
qemu-img convert -f qcow2 -O raw ubuntu.qcow2 ubuntu.img
6.3 Windows 下的用法
Windows 无原生支持,可通过以下方式使用:
- 安装 QEMU for Windows,使用
qemu-img转换格式; - 用 VirtualBox 的 VBoxManage 转换后挂载;
- 在 WSL2 中按 Linux 方式操作。
# 转换为 VHDX 后用 Windows 原生挂载
qemu-img convert -f qcow2 -O vhdx ubuntu.qcow2 ubuntu.vhdx
Mount-VHD -Path ".\ubuntu.vhdx"
6.4 macOS 下的用法
# 安装 qemu
brew install qemu
# 查看与转换
qemu-img info ubuntu.qcow2
qemu-img convert -f qcow2 -O raw ubuntu.qcow2 ubuntu.img
7. 四种格式的核心区别
| 维度 | ISO | IMG (raw) | VHD/VHDX | QCOW2 |
|---|---|---|---|---|
| 抽象层级 | 文件系统(光盘) | 裸磁盘/分区 | 虚拟硬盘 | 虚拟硬盘 |
| 是否含分区表 | 通常无 | 视情况 | 有 | 有 |
| 是否可写 | 只读 | 可写(直接改文件) | 可写 | 可写 |
| 稀疏/按需增长 | 否 | 否 | VHDX 支持 | 支持 |
| 快照 | 不支持 | 不支持 | 差异盘 | 内置快照 |
| 压缩 | 无 | 无 | 无 | 支持 |
| 典型工具 | Rufus、dd、hdiutil | dd、Etcher、Win32DiskImager | Hyper-V、Mount-VHD | qemu-img、qemu-nbd |
| 主要生态 | 通用 | 通用/嵌入式 | 微软 | QEMU/KVM/云 |
8. 格式转换与选型建议
8.1 常用转换命令
# IMG -> QCOW2
qemu-img convert -f raw -O qcow2 disk.img disk.qcow2
# QCOW2 -> VHDX
qemu-img convert -f qcow2 -O vhdx disk.qcow2 disk.vhdx
# VHDX -> QCOW2
qemu-img convert -f vhdx -O qcow2 disk.vhdx disk.qcow2
# ISO -> IMG(仅适用于可引导光盘镜像,本质是去掉光盘封装)
# 一般不建议直接转换,应按目标平台重新制作启动盘
8.2 选型建议
- 装系统、做启动盘:选 ISO,工具链最成熟;
- 树莓派/嵌入式/固件烧录:选 IMG,直接
dd写入; - Hyper-V、Windows 备份、企业虚拟化:选 VHDX;
- KVM/QEMU、OpenStack、需要快照与稀疏分配:选 QCOW2。
8.3 一张图看懂使用路径
9. 常见坑与注意事项
- 写盘前务必确认设备名:
dd写错设备会直接毁掉系统盘,建议先用lsblk/diskutil list核对容量。 - IMG 挂载失败多半是 offset 不对:用
fdisk -l或parted查看分区起始扇区,再乘扇区大小。 - VHDX 在 Linux 上挂载需要 nbd 模块:部分内核未编译该模块,需先安装
qemu-utils。 - QCOW2 不要直接
dd到物理盘:它是虚拟格式,必须先qemu-img convert -O raw。 - ISO 是只读的:需要修改内容时,先解包到目录,再用
genisoimage/xorriso重新打包。 - 跨平台转换优先用
qemu-img:它几乎支持所有主流格式互转,是事实标准工具。
10. 补充:装系统常见的四种镜像——ISO、GHO、WIM、ESD
前面讨论的是「镜像文件格式」层面的差异,而在 Windows 装机这个具体场景里,大家更常听到的是另外四个名字:ISO、GHO、WIM、ESD。它们并不是同一维度的分类——ISO 是「容器」,GHO/WIM/ESD 是「系统映像的封装格式」。这一节专门讲清它们在装系统时的用法与区别。
10.1 四种格式速览
| 格式 | 典型后缀 | 本质 | 典型工具 | 是否可直接引导安装 |
|---|---|---|---|---|
| ISO | .iso | 光盘镜像容器,内部可放任意文件 | Rufus、Ventoy、UltraISO | 是(需可引导) |
| GHO | .gho、.ghs | Symantec Ghost 的分区/整盘映像 | Ghost、一键还原类工具 | 否(需 PE 环境还原) |
| WIM | .wim | 微软基于文件的映像格式,可多卷 | DISM、ImageX、WinPE | 否(需部署到分区) |
| ESD | .esd | 加密压缩的 WIM(Electronic Software Download) | DISM、NTLite、部分 PE 工具 | 否(需解密/转换后部署) |
一句话概括:ISO 是「装系统的外壳」,GHO 是「Ghost 时代的整盘快照」,WIM 是「微软官方的文件级映像」,ESD 是「WIM 的高压缩加密版」。
10.2 ISO:装机最通用的载体
装系统时说的 ISO,通常指微软官方或第三方封装的系统安装光盘镜像,内部包含 boot、sources、setup.exe 等安装程序文件。
- 制作启动 U 盘:用 Rufus 选择 ISO,按目标机器选择 GPT/UEFI 或 MBR/BIOS 分区方案写入;
- 免写盘方案:用 Ventoy 把 ISO 直接拷进 U 盘即可引导,一个盘可放多个系统;
- 虚拟机安装:VMware/VirtualBox/Hyper-V 直接把 ISO 挂到虚拟光驱启动。
# Windows 下挂载 ISO 查看内容
$m = Mount-DiskImage -ImagePath "D:\Win11_24H2.iso" -PassThru
($m | Get-Volume).DriveLetter
注意:ISO 只是「外壳」,里面装的可能是 WIM、ESD,也可能是 GHO。判断一个 ISO 能不能直接引导安装,要看它是否带引导记录和
sources\boot.wim。
10.3 GHO:Ghost 时代的整盘快照
GHO 是 Symantec Ghost 生成的映像,本质是按扇区/簇备份的分区或整盘快照,常见于早期的「一键还原」「Ghost 版系统」。
- 制作:在 PE 中用 Ghost 选择
Local → Partition → To Image; - 还原:
Local → Partition → From Image,选择目标分区后写入; - 特点:还原速度快、体积相对小,但与硬件和分区结构强绑定,跨机型还原容易蓝屏(尤其是存储控制器驱动不同)。
Ghost 典型流程(在 PE 环境下操作):
Local -> Partition -> To Image 备份分区为 .gho
Local -> Partition -> From Image 从 .gho 还原到分区
现状:GHO 已逐步被淘汰,新机器(尤其是 NVMe + UEFI + GPT)用 GHO 还原失败率高,不建议在新平台使用。
10.4 WIM:微软官方的文件级映像
WIM(Windows Imaging Format)是微软从 Vista 开始引入的映像格式,基于文件而非扇区,因此可以:
- 一个 WIM 内放多个「卷」(如专业版、家庭版),安装时选择;
- 支持增量更新与去重,多个版本共享相同文件只存一份;
- 支持离线挂载修改(用 DISM),不依赖硬件。
# 查看 WIM 中的映像列表
dism /Get-WimInfo /WimFile:D:\sources\install.wim
# 挂载到目录进行修改
dism /Mount-Image /ImageFile:D:\sources\install.wim /Index:1 /MountDir:C:\mount
# 提交并卸载
dism /Unmount-Image /MountDir:C:\mount /Commit
# 将 WIM 应用到目标分区(PE 环境下)
dism /Apply-Image /ImageFile:D:\sources\install.wim /Index:1 /ApplyDir:W:\
官方 ISO 里的
sources\install.wim就是它。WIM 不能直接引导,必须通过 WinPE 或安装程序部署到分区。
10.5 ESD:高压缩加密的 WIM
ESD(Electronic Software Download)是微软用于在线分发系统的格式,可以理解为经过 LZMS 高压缩并加密的 WIM。
- 来源:Windows 更新助手、Media Creation Tool 下载的
install.esd,以及部分官方镜像; - 特点:体积比 WIM 小 30% 左右,但不能直接用 DISM 挂载(加密),需先解密或转换;
- 转换:用
dism的/Export-Image或第三方工具(如 NTLite、ESD-Decrypter)转为 WIM。
# ESD 转 WIM(部分未加密 ESD 可直接导出)
dism /Export-Image /SourceImageFile:D:\sources\install.esd /SourceIndex:1 /DestinationImageFile:D:\install.wim /Compress:max
# 查看 ESD 信息
dism /Get-WimInfo /WimFile:D:\sources\install.esd
若提示「文件受保护/无法识别」,说明该 ESD 已加密,需要先用对应工具解密再转换。
10.6 四者的核心区别
| 维度 | ISO | GHO | WIM | ESD |
|---|---|---|---|---|
| 抽象层级 | 容器(光盘镜像) | 扇区级快照 | 文件级映像 | 文件级映像(压缩加密) |
| 是否可多卷 | 否(内部可含多文件) | 否 | 是 | 是 |
| 是否可离线修改 | 需解包重打包 | 困难 | 是(DISM 挂载) | 需先解密/转换 |
| 压缩率 | 取决于内部格式 | 中 | 中 | 高 |
| 硬件依赖 | 低 | 高 | 低 | 低 |
| 典型场景 | 制作启动盘、虚拟机安装 | 老机器快速还原 | 官方部署、批量装机 | 在线分发、精简系统 |
10.7 选型建议
- 新机器装系统:优先用官方 ISO(内部为 WIM 或 ESD),配合 Rufus/Ventoy 制作启动盘;
- 批量部署企业环境:用 WIM + DISM 或 MDT/SCCM,便于统一镜像与驱动注入;
- 下载到 ESD 想改系统:先转成 WIM,再用 DISM 挂载精简;
- 老机器/老 PE 环境:GHO 仍可用,但要注意分区结构与存储驱动匹配。
10.8 一张图看懂装机镜像选择
10. 总结
镜像文件并不是「谁替代谁」的关系,而是面向不同场景的抽象:
- ISO 面向光盘分发与系统安装;
- IMG 面向裸盘烧录与嵌入式;
- VHD/VHDX 面向微软虚拟化生态;
- QCOW2 面向 QEMU/KVM 与云平台。
另外装系统那块兼容性最好的非ISO莫属:
- ISO “外包装箱”的光盘安装包。
- GHO 优点是恢复快但缺点是绑定硬件,所以现阶段基本淘汰。
- WIM 微软官方的系统本体。
- ESD 高压缩版WIM。
掌握它们的挂载方式(mount -o loop、qemu-nbd、Mount-VHD、hdiutil)和转换工具(qemu-img),就能在 Windows、Linux、macOS 之间自由搬运系统镜像,少走很多弯路。
另外装系统可以这么选:普通人装系统用ISO,企业批量部署用WIM,在线升级用ESD,老电脑应急才考虑GHO。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)