将 img 转换为 vhdx/vmdk
- qemu-img windows
Image format | Argument for -f and -O options |
---|---|
VMDK (VMware) | vmdk |
QCOW2 (KVM, Xen) | qcow2 |
VHD (Hyper-V) | vpc |
VHDX (Hyper-V) | vhdx |
RAW | raw |
VDI (VirtualBox) | vdi |
# 在 Debian 中安装 qemu-utils
sudo apt install qemu-utils
# 转换 img 为 vhdx, 其中 subformat 可为 "dynamic" 或 "fixed"
qemu-img convert -f raw -O vhdx -o subformat=dynamic input.img output.vhdx
# 转换 img 为 vmdk
qemu-img convert -f raw -O vmdk -o compat6 input.img output.vmdk
# 在 .bashrc 中添加以下 alias,可以通过调用 img2vhdx input.img 快速将 img 转换为 vhdx
alias img2vhdx='function _img2vhdx() { filename=$(basename $1 .${1##*.}); filecov=${filename}.vhdx; qemu-img convert -f raw -O vhdx -o subformat=dynamic $1 ${filecov}; qemu-img check ${filecov}; qemu-img info ${filecov}; }; _img2vhdx'
alias img2vmdk='function _img2vmdk() { filename=$(basename $1 .${1##*.}); filecov=${filename}.vmdk; qemu-img convert -f raw -O vmdk -o compat6 $1 ${filecov}; qemu-img check ${filecov}; qemu-img info ${filecov}; }; _img2vmdk'
Windows 可以使用 qemu-img for Windows 实现类似功能。