Mounting a USB stick with VirtualBox
I used VirtualBox to create a bootable USB key with FreeBSD using VirtualBox on my Mac. Here are a few issues I ran into.
Contents
USB2 is not supported by VirtualBox
VirtualBox does not support USB2 by default. If you try to mount a USB device, you will get a warning that it requires 'Oracle VM VirtualBox Extension Pack'. Download from the VirtualBox website and install extension pack (which contains binary USB 2 driver)
Determine the mount location of the disk
The mount location of the USB disk is determined by your operating system and presently available hardware. The names typically take these forms:
-
/dev/da0
on FreeBSD -
/dev/disk2
on Mac OS X -
/dev/sda1
on Linux
If the USB key is already mounted, these tools list the mounted disks:
-
mount
on Linux and FreeBSD -
diskutil list
on Mac OS X
Mac does not fully unmount USB stick
Problem: Ejecting a disk in the Finder only ejects the partition, but does not unmount the whole disk.
Solution: determine the disk, and unmount using diskutil:
diskutil list diskutil unmountDisk /dev/disk2
No USB devices found
Deattach USB disk from host computer, and attach to to Virtual Box.
- Problem
- Installer shows up, but I can't select a USB disk. Even after rescanning, and checking the fixit menu, it gaves an error "No USB devices found".
- Solution
- I installed FreeBSD on virtual disk, instead of USB disk. Succeeded.
USB_ERR_TIMEOUT
Booted FreeBSD in VirtualBox, and attached USB disk. Error:
uhub_reattach_port: port 1 reset failed, error=USB_ERR_TIMEOUT uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 1
Seems a bug in VirtualBox. See issue #8182
In VirtualBox settings (under ports > USB) Disable USB 2.0 (EHCI) Controller.
Reboot the Virtual box.
Now the USB key works fine in FreeBSD, and is made available at /dev/da0
..