VirtualBox不仅支持在Host的存储上新建一个.vdi或.vmdk的文件作为虚拟机的虚拟磁盘,也可以把宿主机的一块物理硬盘映射为一个.vmdk文件后作为虚拟机的硬盘。让虚拟机直接读写物理硬盘,进行分区、格式化等等复杂操作。在某些特殊场景下,如我们的宿主机为Windows,手里有一块从别的Linux服务器上拆下来的物理硬盘,由于linux使用的是ext4或LVM,btrfs等格式,windows无法直接读取其中的文件,就可以使用linux的虚拟机,直通这块物理磁盘。同样可以挂两块、三块物理盘给虚拟机。
Windows10下面的直通比linux复杂,因为容易碰到管理员权限的问题。如VERR_ACCESS_DENIED
首先,下面是VirtualBox官方关于硬盘直通的文档,介绍了VirtualBox是完全支持的。但是无法在windows版图形界面实现,需要使用命令行
https://www.virtualbox.org/manual/ch09.html#rawdisk
针对Windows10,文档写的并不充足,因为首先,我们要把这块物理硬盘从windows系统脱机
最简单的方法是,在搜索框中搜索“创建并格式化硬盘分区”
打开之后,找到我们要直通的那块硬盘 ,右键脱机
注意,如果你这块硬盘已经格式化好并且分配了盘符挂到windows上了,脱机前要先解除挂载,把读写这个分区的应用程序都停掉
脱机之后,就会有相关提示,如下图
如果不想使用图形界面来脱机,还可以使用Windows的diskpart命令来脱机,可以参考国外这篇帖子,通过命令行的方式脱机