必须使用scsi控制器添加已脱机的整块物理磁盘,宿主机需提前禁用自动挂载并移除盘符,虚拟机启动后在系统内初始化、分区并格式化——该操作不可逆,宿主机将永久丢失原数据。

要在 Windows 10 上让 Hyper-V 虚拟机直接访问整块物理硬盘并实现全速读写,必须绕过宿主机文件系统层、禁用所有中间缓存与自动挂载干扰,且确保磁盘在虚拟机内以裸设备形式被识别和初始化——这要求宿主机彻底释放控制权,虚拟机获得底层 SCSI 访问权限。
确认前提条件与风险准备
先检查 Hyper-V 是否已启用:打开“控制面板→程序→启用或关闭 Windows 功能”,确认勾选了“Hyper-V”“Hyper-V 平台”“Hyper-V 管理工具”。家庭版 Win10 不支持,此操作无法继续。
目标磁盘不能是系统盘,也不能正在运行 BitLocker 加密、Windows 备份任务或被任何进程独占。脱机操作本身不删除数据,但【一旦虚拟机完成初始化并格式化,宿主机将永久丢失该磁盘上原有全部内容】。
务必用另一台设备或外部硬盘备份目标磁盘全部数据——这不是提醒,是不可逆操作的强制前置步骤。
在宿主机上将物理磁盘设为脱机状态
按 Win + R 输入 diskmgmt.msc 回车,打开磁盘管理。
在右侧面板找到目标磁盘(注意看容量、接口类型、磁盘编号,例如“磁盘 2”),右键点击其左侧灰色标题栏区域(不是某个分区),选择“脱机”。
成功后,该磁盘显示为“脱机”,所有分区变灰且不显示盘符。若右键菜单中无“脱机”选项,说明该磁盘是系统盘或被 BitLocker 锁定,需先解锁或更换目标盘。
禁用宿主机自动挂载并清除驱动器号
即使磁盘已脱机,若此前分配过盘符(如 D:),Windows 可能在后台尝试重新挂载,导致直通失败。
以管理员身份运行命令提示符,依次执行:
mountvol /N → 禁用所有卷的自动挂载
diskpart → 启动磁盘分区工具
list volume → 查看所有卷列表,记下对应目标磁盘的卷号(如 Volume 3)
select volume 3 → 选中该卷
remove letter=D → 移除其盘符(D 替换为实际字母)
回到磁盘管理界面,确认该磁盘不再显示任何驱动器号,仅显示“脱机”二字。
通过 SCSI 控制器为虚拟机添加物理磁盘
打开 Hyper-V 管理器,右键目标虚拟机 → “设置”。
展开左侧“SCSI 控制器” → 点击“硬盘驱动器” → 右侧点“添加”。
在新窗口中,“硬盘类型”下拉菜单选择“物理硬盘”,下方列表即显示已脱机的磁盘(如“磁盘 2”),勾选它,点击“确定”。
【必须使用 SCSI 控制器;IDE 控制器不支持物理硬盘直通,选错会导致添加失败或虚拟机无法启动】
在虚拟机内识别、初始化并格式化磁盘
启动虚拟机(必须关机状态下完成上述设置,否则添加无效)。
进入虚拟机操作系统后:
• 若为 Windows 虚拟机:按 Win + X → “磁盘管理”,会弹出“发现新磁盘”向导 → 选择“初始化磁盘” → 推荐选 GPT → 新建简单卷 → 分配盘符 → 格式化为 NTFS(勾选“快速格式化”即可)。
• 若为 Linux 虚拟机:打开终端,执行 lsblk 或 fdisk -l,找到新设备(通常为 /dev/sdb 或 /dev/nvme1n1)→ 用 parted /dev/sdb mklabel gpt 初始化 → mkfs.ntfs -f /dev/sdb1 或 mkfs.ext4 /dev/sdb1 格式化 → mkdir /mnt/data && mount /dev/sdb1 /mnt/data 挂载使用。











