你是不是也遇到过这种情况:辛辛苦苦下载了一个系统镜像,兴冲冲打开 VirtualBox 或 VMware 准备导入,结果弹出一堆错误提示,直接卡住不动了?别说安装系统了,连虚拟机都进不去,真是又急又气。
最常见的报错长什么样?
比如在 VMware 里提示“无法打开磁盘 .vmdk 所在的文件夹:访问被拒绝”,或者 VirtualBox 显示“VERR_ACCESS_DENIED”、“Could not open the medium”。这类问题多半不是镜像本身坏了,而是权限或路径惹的祸。
先检查一下你把镜像文件放在哪儿了。如果放在了“下载”文件夹、桌面,甚至是某些加密网盘同步目录里,系统可能限制了虚拟机软件的读取权限。试着把镜像复制到 D 盘根目录下,比如 D:\VM_Images\ 这种干净路径,再重新添加,往往就能绕过去。
镜像格式不兼容也会闹脾气
有的镜像是 .qcow2 格式,而 VMware 只认 .vmdk,VirtualBox 虽然支持多格式,但导入时也可能抽风。这时候得转换格式。可以用 qemu-img 工具处理:
qemu-img convert -f qcow2 -O vmdk ubuntu.qcow2 ubuntu.vmdk
执行完就生成了一个 VMware 能认的 vmdk 文件。注意命令里的 -f 是源格式,-O(大写 O)是目标格式,别写反了。
硬件虚拟化没开,导入后也跑不起来
哪怕顺利导入,启动时蓝屏或提示“VT-x is disabled in BIOS”,说明你的 CPU 虚拟化功能压根没开。这就像车钥匙没拔,发动机却打不着火。重启电脑进 BIOS,找到 Intel VT-x 或 AMD-V 选项,设为 Enabled 就行。不同主板位置不一样,通常在 Advanced > Processor Configuration 之类的地方。
还有可能是 OVF 模板文件出问题
有些镜像是以 .ovf + .vmdk 配套出现的。如果你只导入了 vmdk 磁盘,忽略 ovf 描述文件,虚拟机就不知道怎么组装这个系统。正确做法是右键选择“部署 OVF 模板”,让软件自动读取配置。如果 ovf 文件里写的磁盘名称和实际 vmdk 不一致,也会报错。可以文本编辑器打开 ovf 文件,搜 <File 标签,确认引用的磁盘文件名是否对得上。
改的时候小心别破坏 XML 结构。比如原来是:
<File ovf:href="disk1.vmdk" />
但你手上的文件叫 system-disk.vmdk,那就改成:
<File ovf:href="system-disk.vmdk" />
磁盘空间不够?别小看这点容量
看着镜像才几个 GB,可解压后动辄二三十 GB。特别是 Windows 系统镜像,导入时需要临时空间展开。D 盘只剩 5GB,硬要塞一个 20GB 的系统,肯定失败。动手前先看看硬盘剩余空间,留出双倍于镜像大小的余量更保险。
另外,杀毒软件有时候会误拦虚拟机操作文件。比如卡在“正在复制介质”不动,任务管理器一看,进程被安全软件冻结了。临时关掉实时防护试试,问题常能迎刃而解。