windows 上 vmware workstation 直通物理磁盘需满足两项前提:一、目标磁盘在 windows 磁盘管理中必须处于“联机”状态,脱机则被设为只读导致直通失败;二、虚拟机磁盘高级设置须设为 independent-persistent(永久)模式,以绕过快照机制并实现底层设备直写。
windows 本身不提供“物理直通”给虚拟机的原生功能,这个操作实际是 vmware workstation 的磁盘直通(raw disk mapping),不是 windows 磁盘管理直接完成的。但 windows 的磁盘管理是关键前置步骤——它负责让目标硬盘处于可被 vmware 直接访问的状态。
确保物理磁盘在 Windows 中处于“联机”状态
VMware 只能直通“联机”且未初始化/未分配的磁盘(或已初始化但未挂载驱动器号的磁盘)。脱机磁盘会被系统设为只读,导致直通失败。
- 按 Win + R,输入
diskmgmt.msc,回车打开磁盘管理 - 找到目标物理硬盘(注意看容量、接口类型和磁盘编号,避免选错系统盘)
- 若状态显示“脱机”,右键该磁盘 → 选择“联机”
- 如果磁盘显示“未初始化”,右键 → “初始化磁盘”(选 MBR 或 GPT,建议 GPT;但注意:初始化会清空磁盘!确保数据已备份)
- 如已有分区但不需要 Windows 使用,可右键各分区 → “删除卷”,释放全部空间(同样会丢失数据)
关闭自动挂载,避免 Windows 占用驱动器号
即使磁盘联机了,只要某个分区被分配了盘符(如 D:、E:),Windows 就可能持续访问它,干扰 VMware 直通。需禁用自动挂载:
- 以管理员身份运行命令提示符
- 执行:
mountvol /N(禁用所有卷的自动挂载) - 再执行:
diskpart→list volume→ 找到对应卷号 →select volume X→remove letter=D(移除盘符) - 确认磁盘在磁盘管理中不再显示任何驱动器号,仅显示“联机(无媒体)”或“联机(未分配)”
在 VMware 中添加直通磁盘并设为永久模式
这一步必须在虚拟机关机状态下操作,否则设置无效或报错:
- 打开 VMware Workstation → 选中目标虚拟机 → “编辑虚拟机设置”
- 点击“添加” → 选择“硬盘” → “使用物理磁盘(用于测试目的)”
- 选择对应磁盘编号(如“物理磁盘 1”),勾选“使用整个磁盘”,取消勾选“启动时连接”(可后续手动启用)
- 完成向导后,在虚拟机设置中选中刚添加的硬盘 → 点击“高级” → 将“模式”改为 Independent-Persistent(独立-永久)
- 保存设置,启动虚拟机
此时虚拟机将直接看到整块物理硬盘(如 /dev/sdb),可在其内部用磁盘管理或 diskpart 进行分区、格式化等操作,完全绕过宿主机的文件系统层。
注意事项与常见问题
直通后虚拟机获得的是底层设备级访问权,因此:
- 不能对直通磁盘做快照 —— Independent-Persistent 模式禁用快照,这是设计使然
- 宿主机不能同时读写该磁盘 —— 否则可能引发数据损坏,务必确保 Windows 不挂载、不索引、不备份该盘
- UEFI 虚拟机需注意启动分区 —— 若直通盘含 Windows 系统,第 2 代 VM(UEFI)不依赖“活动分区”,但需确保 EFI 系统分区存在且正确配置 BCD
-
权限不足时会提示“拒绝访问” —— 确保 VMware Workstation 以管理员身份运行,且用户账户对目标磁盘有“完全控制”权限(可通过 diskpart 的
attributes disk clear readonly检查)











