I wanted to be able to boot my USB drive with Tiny Core Linux installed on it from Virtualbox on my Ubuntu laptop in order to do the set-up from my machine before booting my headless server from the USB once set-up is complete.
This assumes you have a bootable USB drive with Tiny Core Linux installed on it already.
VirtualBox (4.3.12) on Ubuntu requires the VirtualBox extensions to be installed to support USB full stop, get those at http://www.virtualbox.org/wiki/Downloads and install them (see here for more background info).
Now, even with those installed, VirtualBox doesn’t allow booting from USB (and using Plop BootManager only got me a Boot Failed error). I followed those instructions (with a sudo in front) to create a vmdk file pointing to my USB – http://www.dallagnese.fr/en/computers-it/boot-on-your-usb-drive-in-virtualbox-4/.
Finally, I kept getting an error in VirtualBox when trying to add the vmdk file as a hard drive, even after adjusting the permissions on both the generated vmdk file and the USB drive itself. I got it to work by opening the VirtualBox GUI as root. From Terminal, type “sudo VirtualBox”.
And that’s it. My VirtualBox guest is now booting from the USB drive without issues or errors.
It was short-lived. Doing the above allowed me to boot up the live system. However, once the system was installed (following those instructions – http://www.parkytowers.me.uk/thin/Linux/CoreInstall.shtml), it gave me a “Boot Failed” error instead.
Through a series of trials and errors, I got it to work by:
- Attaching the Plop Boot Manager ISO to the Virtual CD drive. The virtual machine then boots into the Plop Boot menu.
- At the boot menu, press “q” to list the different partitions to boot from (from the vdmk file created above that points to the USB drive) and (in my case?), choose “HDA Partition 3” to boot up Tiny Core.
A bit of a roundabout way and certainly more complicated than I was expecting but it works!