Mac M4 + UTM 搭建 Win2003 靶机:从满怀希望到启动失败的踩坑全记录

166 阅读8分钟

新手学习记录,记录自己搭建靶机环境的全过程,步骤详细,方便以后复习。

本次实操证明:老旧 Windows 系统(如 2003)跨虚拟机平台迁移几乎不可行,新手搭建靶场优先选择 官方 ISO 全新安装,而非直接迁移他人镜像。
附 Win2003 ISO 安装版完整教程:
juejin.cn/post/761170…

一、环境说明

  • 电脑:Mac M4 芯片

  • 虚拟机软件:UTM
  • 系统说明:Windows 2003、Windows 7 这类老系统是 x86 架构,Mac M4 是 ARM 架构,不兼容,无法直接安装原版 ISO。
  • 镜像下载说明:微软已停止官方支持与官方镜像下载,如果需要下载 Windows 2003 镜像,只能在第三方网站、技术论坛、资源站等非官方渠道寻找。
  • 第三方下载风险:无安全保障、可能被植入木马/后门/捆绑软件、存在版权合规风险、文件易损坏、无技术支持,个人学习谨慎使用。
  • 资源来源:他人提供的 VMware 格式已装好系统的虚拟机压缩包(非安装ISO)

二、UTM 下载与安装

2.1 UTM 官方下载地址

UTM官网(Mac版):mac.getutm.app/
GitHub下载页:github.com/utmapp/UTM/…

2.2 安装步骤(图示步骤略)

  1. 打开上面官网链接,点击页面 Download 下载 .dmg 安装包(免费开源版)
  2. 下载完成后,双击打开 dmg 文件
  3. 将左侧 UTM.app 图标,拖拽到右侧「应用程序」文件夹
  4. 打开启动台,找到 UTM 并启动
  5. 若提示「无法验证开发者」:打开 系统设置 → 隐私与安全性,下滑找到允许运行 UTM,输入密码确认即可

三、准备工作

  1. 完成 UTM 软件安装并能正常打开
  2. 解压提供的 Windows 2003 虚拟机压缩包,得到可直接导入的虚拟机文件

四、VMware 虚拟机格式转换(转为 UTM 可识别格式)

4.1 安装格式转换工具

因为要把 VMware 的 .vmdk 磁盘文件转换成 UTM 可以识别的格式,需要用到 qemu-img 命令行工具,这个工具需要先在 Mac 上安装。

4.1.1 安装 Homebrew(如果没装过)

先打开终端,复制粘贴下面这条命令安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

4.1.2 检查 Homebrew 是否安装成功

brew -v
  • 如果显示 版本号,说明安装成功;
  • 如果提示 command not found: brew,说明没有安装成功,需要重新安装。

4.1.3 安装 qemu(包含 qemu-img 工具)

Homebrew 安装完成后,执行下面命令安装 qemu:

brew install qemu

4.1.4 验证qemu安装是否成功

安装完成后,输入以下命令检查版本,有版本输出就说明安装成功:

qemu-img --version

4.2 进入虚拟机文件目录

  1. 先把 VMware 虚拟机压缩包完全解压
  2. 找到解压后的文件夹,里面会有 .vmdk 后缀的磁盘文件(这是VMware虚拟硬盘)
  3. 记住这个文件夹的完整路径,或者直接把文件夹放到桌面方便操作
  4. 打开 Mac 终端,用 cd 命令进入该目录。

注意:不知道路径时,不用手动写复杂路径,直接把文件夹拖到终端,Mac 会自动识别并填入完整路径。

  1. 再按回车,就成功进入目录了
  2. 进入目录后,查看文件是否存在:
ls

执行后能看到 .vmdk 结尾的文件,就说明目录进对了。

你看到的这些 Windows Server 2003-01-s001.vmdks002.vmdk… 其实是一个大磁盘被切成了很多小片段,就像把一部电影分成了好几段。

  • 真正的“主文件”是那个最小的 .vmdk,通常只有几 KB。
  • 这个主文件里记录了:所有片段的顺序、位置、大小,相当于一个“目录索引”。
  • 那些 s001.vmdks002.vmdk 才是真正存数据的片段。

所以,你不需要也不能逐个转换这些 s001.vmdk,只需要用那个主 .vmdk 文件,qemu-img 会自动去读所有片段,把它们拼成一个完整的磁盘再输出成 .qcow2

4.3 执行格式转换命令

确认目录正确、能看到 .vmdk 文件后,

  1. 找到主 VMDK 文件

输入这个命令,查看所有 .vmdk 文件的大小:

ls -lh *.vmdk

重要说明:VMware 分片磁盘文件

解压后出现的 Windows Server 2003-01-s001.vmdk、s002.vmdk 等,是磁盘被切分后的数据片段

  • 真正的主文件:最小、仅几 KB.vmdk(索引文件,记录所有分片关系)
  • 数据文件:2GB 左右的分片文件,存储真实系统数据

转换时只需要主索引文件,qemu-img 会自动拼接所有分片。

  1. 执行转换命令

用这个主描述文件作为输入,执行转换:

qemu-img convert -f vmdk "Windows Server 2003-01.vmdk" -O qcow2 Win2003_utm.qcow2
  • -f vmdk:告诉 qemu-img 输入格式是 VMDK。
  • "Windows Server 2003-01.vmdk":输入的主文件(因为文件名有空格,必须用双引号包起来)。
  • -O qcow2:告诉 qemu-img 输出格式是 qcow2。
  • Win2003.qcow2:输出的文件名,你可以自己改,但建议用简单的英文,不要有空格。
  1. 等待转换完成

执行后终端会静默几秒钟到几分钟(没有进度条是正常现象),等待命令跑完,回到可输入状态,就表示转换完成。

转换完成后,当前目录会出现一个新文件:
Win2003_utm.qcow2
这个就是 UTM 可以识别并使用的虚拟磁盘文件。可以用 ls 查看。

最后一行就是

五、UTM 导入 Win2003 靶场磁盘

步骤 1:新建虚拟机

  1. 打开 UTM,点击左上角 + 新建虚拟机
  2. 在“开始”界面,选择 模拟(Emulate)
  3. 操作系统选择 其他
  4. 修改
  5. 启动设备:把 CD/DVD 映像 改成

因为我们是导入已经装好系统的 qcow2 硬盘,不是用 ISO 安装,所以不需要从光盘启动。

UEFI 启动:保持 不勾选

Win2003 是老系统,不支持 UEFI,用传统 BIOS 启动才对。

改完之后点 继续

  1. 点击 继续

  1. 点击右下角 存储
  2. 自动返回到这个页面

步骤 2:配置

  1. 选中虚拟机并进入编辑
    在 UTM 主界面,右键点击你刚创建的虚拟机,在弹出的菜单中选择 编辑
  2. 修改虚拟机名称:在 UTM 编辑界面的「名称」输入框中,将名称修改为 Win2003,方便识别。
  3. 配置网络(靶场必备)
    a. 在左侧菜单中点击 网络 选项卡。
    b. 将网络模式从默认的「共享网络」修改为 桥接(Bridge) ,使虚拟机与攻击机(如 Kali)处于同一网段,便于渗透测试。
    c. 其他网络参数保持默认即可

  1. 删除IDE驱动器
  • 在编辑界面左侧,切换到 驱动器 选项卡。
  1. 导入系统磁盘
  • 点击驱动器列表下方的新建,选择 导入现有磁盘
  • 在文件浏览器中,找到并选中你之前转换好的 Win2003.qcow2 文件,点击 打开

  1. 点击编辑界面右下角的 储存
  1. 返回 UTM 主界面,选中该虚拟机,点击 ▶️ 启动

六、启动过程中遇到的问题

6.1 VMware Fusion 无法使用问题

  1. 问题:尝试用 VMware Fusion 搭建 Win2003,完全无法安装 / 启动
  2. 原因:Mac M4 为 ARM 架构,Win2003 为 x86 架构;VMware Fusion Apple 芯片版仅支持 ARM 系统,不支持 x86 模拟,无法运行老系统。
  3. 解决:改用 UTM(基于 QEMU 全系统模拟),可在 ARM 芯片上模拟 x86 硬件环境。

6.2 启动报错:Error loading operating system

  1. 报错现象启动虚拟机后黑屏,提示:Error loading operating system(无法加载操作系统)
  2. 报错真实原因(核心) 该镜像为 VMware 环境下装好的系统盘,不是纯净安装 ISO:
  • 系统在 VMware 安装时,已自动安装 VMware 专用硬盘驱动
  • 导入 UTM 后,硬盘硬件、控制器全部更换(变为 UTM IDE 硬件)
  • Windows 2003 太老旧,无通用硬盘驱动,无法识别新硬件
  • 系统能找到硬盘,但读不懂硬盘、找不到驱动,无法加载系统
  1. Windows 7 可正常迁移,是因为 Win7 自带通用驱动,可自动适配新硬件;Windows 2003 无通用驱动,换虚拟机平台 = 必然启动失败
  2. 该报错不是镜像损坏、不是转换失败、不是引导损坏,是硬件驱动不兼容

虚拟机找到了硬盘,但无法加载硬盘上的操作系统。

七、最终效果

跨虚拟机平台硬件驱动不兼容,Windows Server 2003 系统无法启动、无法进入桌面,启动失败。

八、小结

  1. Mac M4(ARM)与 Win2003(x86)架构不兼容,VMware Fusion 不支持 x86 模拟,完全无法使用;Windows 2003 无官方镜像,第三方资源风险极高,不建议新手随意下载安装。
  2. Win7 可成功转换并启动,是因为系统较新、自带通用驱动;Win2003 年代过于久远,仅适配原平台(VMware)硬件驱动,无法跨平台迁移到 UTM
  3. 本次操作完整完成:格式转换、UTM 新建虚拟机、磁盘导入、硬件配置、网络配置、启动排查全流程,转换与导入步骤均无操作错误。
  4. 核心结论:已装好系统的 VMware 镜像,不能直接迁移到 UTM 运行 Win2003; 唯一可行方案:使用 Win2003 安装 ISO,在 UTM 内全新安装系统。
  5. 本次学习收获熟悉了 ARM 与 x86 架构兼容问题、虚拟机磁盘格式转换、qemu-img 命令使用、UTM 配置、老旧系统启动原理、靶机网络配置,为后续搭建环境、排查兼容问题打下基础。