How to Access Physical Disk in VirtualBox- Windows 10

VirtualBox has a shared folder feature that allows accessing the host computer physical hard drive partition and folders from the virtual machine. Once the VirtualBox guest additions installed properly, by doing additional steps, this can be enabled easily.  But in some cases, if you want to attach a physical drive partition to a virtual machine from its settings, then you need to follow the steps to accomplish.

This step by steps method explains how you can access the physical disk in VirtualBox. Unfortunately, this cannot be done easily as how we do VMware workstation.  Few commands and hard drive mapping involved in this process to access the physical disk partition in VirtualBox. This access method is called ‘Raw Disk’ access. Read more about what is Raw Disk

Summary

Before starting the procedure, let me explain how it’s going to work.

As I said earlier, it’s not easy as giving access to physical disk in VMware workstation. We have to create a configuration VMDK file for the host’s entire physical disk or partition. Then add this VMDK in Virtual Media Manager. Then allocate the disk to any Virtual Machine in VirtualBox.

Ok, now let’s start the steps.

How to Access Entire Physical Disk from VirtualBox

1) Open Command prompt in Host computer then go to the installation folder of the VirtualBox program, in most cases, it will be under this location.

C:\Program Files\Oracle\VirtualBox

2) Type: (This command is to access entire physical disk as Raw Disk)

VBoxManage internalcommands createrawvmdk -filename c: \Users \sunuser \.Virtualbox \VDI \mydrive.vmdk -rawdisk \ \ . \PhysicalDrive0

 

Access Physical Disk VirtualBox

c: \Users \sunuser \.Virtualbox \VDI \mydrive.vmdk : Location and ‘ mydrive.vmdk’ is the configuration VMDK file of your entire physical drive.

Do not think that the new VMDK file will take huge size as your physical disk size. It’s just a 1KB size file. After you added this file to Virtual Media Manager, then you will get the full size of the physical disk.

\ \. \PhysicalDrive0 : is the physical drive of the host computer. 0,1, 2 numbers can be seen from Disk management in Windows OS under Computer Management. You insert the number as required physical disk number normally starts with 0.

Physical Hard Drive Numbers

3) You can confirm that the command worked correctly by visiting the location of the VMDK file created.

4) Now, Open VirtualBox, and go to Virtual Media Manager.

5) Add the newly created ‘mydrive.vmdk’ under the hard disk. Click here to read more about how to add VMDK file in VirtualBox

6) Add the newly added hard disk to the virtual machines in VirtualBox and start accessing them from the Virtual Machine Guest Operating system. Since this access has the write permission, ensure that any overwriting access from guest VM will not create any issues on the host OS.

How to Access Specific Partitions of Physical Disk from VirtualBox

To access specific partitions of host physical disk from VirtualBox, run the same command with additional switches,

VBoxManage internalcommands createrawvmdk -filename c: \Users \sunuser \.Virtualbox \VDI \ mydrive.vmdk -rawdisk \ \. \ PhysicalDrive0 -partitions 1,3

-partitions 1,3 : The partition numbers of PhysicalDrive 0. It will allow you to access the first and third partitions of the physical drive in this example.

This command also will create a VMDK file and you can access the drives as explained in the first method.

Remeber, by using these methods you can attach a physical disk partition and boot the OS if it has a bootable OS.

16 thoughts on “How to Access Physical Disk in VirtualBox- Windows 10”

  1. help with this one. im using windows 7, running Ubuntu 9.10 inside virtualbox 3.1. when i type the command it shows invalid parameter -users.
    please help. desperately want to use my Ubuntu OS and access all my files from the host.

  2. Hi, it’s not – users (parameter). It’s the location of vmdk configuration file. I used Vista as my host, so I created in that location. Windows 7 also must be the same. Try and let me know.

  3. Hi – Are you positive that you use Vista (or 7) as a host and XP as a guest, XP being on a physical partition ?
    I can’t have this to run with my Win7 and XP (BSOD with UNMOUNTABLE_BOOT_VOLUME). The VB logs says that the physical XP partition cannot be written

    The vdmk was created w/o problem, my VB runs “elevated”, the XP partition is not “mounted” etc … I’ve even tried installing a Kubuntu host instead of the Win7, and using the _exact_ same XP partition in the Kubuntu host, and this run fine. I’m used to use XP and Kubuntu on physical partition w/o problems for years …

  4. Hi Philippe,
    I have Windows 7 and XP as Host and having same Operating systems as guest too. The above steps I tested on Windows vista host but not Windows XP physical partition. To be honest, I’m scared to mount system physical partition inside VirtualBox. But I did later. I mounted Windows XP physical partition in Sun VirtualBox and started same physical computer in VirtualBox. Guess what? Once I restart Host Windows XP later, it says some boot sector or loader corrupted. I struggled to get my host OS back.
    So from that point, I don’t boot or mount physical Host OS in VB. It’s little risky. (I’m not sure; I understand your point correctly).
    Anyway, Thanks for your comment.

  5. Hi

    By using this method I have managed to mount my drive under Debian. I have a question though. Is it ok to modify this physical mounted drive under Linux say with Gparted? I mean this way of accessing of a drive is same as accessing it physically. For example can I resize one of the partitions of this drive inside Debian running on Vbox using Gparted?

    thanks

    • @chromn,
      I would suggest to NOT doing anything on physical disk ( if its bootable disk for host computer). I have bad experience about this and even VirtualBox says ‘ any changes may case issues on physical host’.

      You can transfer data ( copy, cut and paste), but don’t try any partitioning except you leased worry about host OS.

  6. For people having problems with doing this on Windows 7. First got error messages VERR_ACCESS_DENIED. After running cmd and virtualbox as administrator i could complete the listed operations. Don know the exact security implications of this. So try at own responsability!

  7. I am running into a issue when trying to attach to the vmdk created on a Win 7 system. The infor is as follows; create usbboot.vmdk using the command

    VBoxManage internalcommands createrawvmdk -filename “c:\Users\admin\Virtualbox VMs\USBboot\usbboot.vmdk” -rawdisk \\.\PhysicalDrive5

    run from command prompt as administrator.

    I tried to “add Hard disk” virtual disk file to the IDE Controller, running VirtualBox as administrator. It gave me the error “failed to open the hard disk C:\users\admin\virtualbox vms\usbboot\usbboot.vmdk The medium C:\users\admin\virtualbox vms\usbboot\usbboot.vmdk cant be used as the requested device type.”

    This makes me think there is a different device type i should be using or need to create the vmdk differently. Please let me know what steps I am missing.

  8. Please note that it is necessary to start VirtualBox as administrator as well. The problem I have got is that my USB stick changes the PhysicalDiskID every time I reboot and recreating the vmdk file doesn’t work, since the UUID is broken. So every time I have to change the contents of the vmdk file manually. But no worries; this file is small, and easy understandable!

  9. To anyone who gets massive long errors in their cmd try copy and pasting this. remember to change the user name. mine was spitting out the errors because it couldn’t create the VDI folder. even though i tried running cmd in admin mode. i’m also using Windows 7 Ultimate x64.

    VBoxManage internalcommands createrawvmdk -filename c:\Users\[USERNAME]\.Virtualbox\mydrive.vmdk -rawdisk \\.\PhysicalDrive0

    the vmdk file you are creating is just a link to the physical drive that the VM can understand since it is specifically designed to not allow any crossover to contain viruses and such. so if you are using a usb you will just have to recreate the vmdk every time you remove and then reconnect your usb.

  10. Great post, works perfectly in Windows 7 x64 when the parameters are entered correctly without all the extra spaces you added to the sample command line. Looking through some of the comments about problems people have had however it may have been a better idea to simply tell people to run VBoxManage internalcommands createrawvmdk and mention that it’s located in their VirtualBox installation dir. If someone can’t figure this out based on the output from running the command without the filename param then they probably shouldn’t be trying it anyway.

  11. hmm, when i install freebsd, in the partitioning there’s this error:

    Error mounting partition /mnt: mount: /dev/ada0a : Invalid argument

    i followed the guide and attached the file in the vbox storage manager. any idea? first try to use a physical partition under win7.

  12. VBoxManage internalcommands createrawvmdk -filename c: \Users \sunuser \.Virtualbox \VDI \mydrive.vmdk -rawdisk \ \ . \PhysicalDrive0
    this command not working says……………….invalid parameter users. any solution sir?

Leave a Comment