The GUI of VirtualBox does not have an option to boot a USB drive (Physical Drive) in a virtual machine.
However you can attach a physical drive to a virtual machine using a command line tool that is bundled with Virtual Box.You can then boot your virtual machine from the attached Physical drive.You need to use VirtualBox with Windows installed in order to use the software for a o2 mobile broadband dongle. As you are probably aware, you are unable to use it with Linux.
This is the continuation of my previous article Test bootable USB drive without restarting your computer.You can read more about bootable usb drives in that article.
Note:This tutorial has been updated for Virtualbox 4.
In this article I will show you how you can boot a bootable usb drive in Virtual Machine created by VirtualBox.You can easily test bootable USB drives within Windows or Linux and without restarting using this method.
Download and install Virtual Box and VirtualBox 4.0.2 Oracle VM VirtualBox Extension Pack from http://www.virtualbox.org/wiki/Downloads
The Extension pack adds support for USB 2.0 devices.
Attaching a Physical Disk to a Virtual Machine
Section 9.6 in the VirtualBox manual contains all the details required to attach a physical disk to a virtual machine.Using the vboxmanage.exe tool you can create a tiny vmdk file which points to your real USB drive (Physical Drive/Disk).You can attach this tiny vmdk to your virtual machine.A vmdk file is a virtual hard disk file which can be used with VirtualBox and VMWare.
The vboxmanage.exe tool is bundled with VirtualBox.You don’t have to download it separately
Open Command Prompt
Navigate to your Virtual Box installation Directory.
cd "c:\Program Files\Oracle\VirtualBox"
Type the following command and press enter
Syntax of the command
VBoxManage internalcommands createrawvmdk -filename path\to\usb.vmdk -rawdisk \\.\PhysicalDrive1
You have to replace pathtousb.vmdk with the path of your choice
Example
VBoxManage internalcommands createrawvmdk -filename "%USERPROFILE%\usb.vmdk" -rawdisk \\.\PhysicalDrive1
In Windows your 1st Hard Disk will be \.PhysicalDrive0.Your 2nd Hard disk will be \.PhysicalDrive1.
Warning:Do not Attach your Primary hard disk to your Virtual Machine and Boot it in the Virtual machine
To find the correct number for your USB Drive
Right Click on My Computer-Manage-Disk Management
Here you can find the correct disk number of your USB Drive
You will have to replace \.PhysicalDrive1 with the correct drive number.
In this case there was only 1 hard disk and 1 USB disk.So the USB drive is referred by \.PhysicalDrive1
In linux you have to replace \.PhysicalDrive1 with the correct /dev/sdx reference.
Now you should have a tiny vmdk file.You can start your Virtual Machine with this tiny vmdk and boot from it.
- Start VirtualBox.
- Create a new Machine or Select an Existing Machine.
- Click on Settings
- Storage-Add Hard Disk
- Select the vmdk file that you had created.
- Make sure that usb.vmdk is your Primary Master.
- System-Boot Order.Set your Hard Disk as the first boot device.
- Now start your Virtual Machine.
Your virtual machine will boot from your bootable physical USB Drive.
In this screenshot I have used a bootable Ubuntu USB drive created using Unetbootin.