[SoaS] Another way to use VirtualBox and SoaS on a Mac

Gary C Martin gary at garycmartin.com
Mon Dec 21 15:33:18 EST 2009


Hey Dave,

On 21 Dec 2009, at 16:03, Dave Bauer wrote:

> On Mon, Dec 21, 2009 at 10:56 AM, Gary C Martin <gary at garycmartin.com>wrote:
> 
>> Hi folks,
>> 
>> Just thought I'd bounce another possible approach pass the list for using a
>> regular Soas loaded USB stick on Mac OS X, this one has the obvious benefit
>> of allowing you to use the same USB stick on different machines/locations.
>> Now, VirtualBox's BIOS does not support booting from a USB stick
>> unfortunately, but as it turns out there are some hidden ways to make
>> VirtualBox boot what the documentation refers to as "raw disks" rather than
>> regular VM disk images (Page 135 in the VB manual, 9.10 Using a raw host
>> hard disk from a guest).
>> 
>> *** Caviate lector, the USB stick I'm using does not seem to be saving
>> changes between uses, I'm not sure if this is an issue with the stick I
>> made, or this approach ***
>> 
>> Here's the steps:
>> 
>> 1) Plug in your soas-2-blueberry USB stick
>> 
>> 2) In a terminal type:
>> 
>>       df
>> 
>> You should see a line that says something like the below, make a note of
>> the /dev/disk1 it may be different on your Mac depending what hardware you
>> have:
>> 
>>       /dev/disk1       1206080   1206080         0   100%
>> /Volumes/soas-2-blueberry
>> 
>> 3) Mac OS X must not auto mount the USB. If it does you can't create the
>> needed vmdk to reference it (you'll get an "VERR_DEV_IO_ERROR"), and the
>> documentation warns of potential file corruption if you allow both a host
>> and guest OS to tinker with the same raw disk at the same time. The rather
>> naughty trick is to go edit your fstab to prevent the specific stick from
>> auto-mounting [I hope to find a non techy replacement for this step]:
>> 
>>       sudo vim /etc/fstab
>> 
>> ...and append the line:
>> 
>>       LABEL=soas-2-blueberry none cd9660 ro,noauto 0 0
>> 
>> 4) Now make sure to eject the USB volume from your desktop; unplug your
>> soas-2-blueberry USB stick; plug it back in again to check. It should _NOT_
>> appear on your desktop this time.
>> 
>> 5) In Terminal run the below VirtualBox command, modifying the .vmdk save
>> location, and your /dev/disk1 as needed. This will create a tiny little vmdk
>> file that holds the description of the USB stick, and register it with the
>> VB media manager so it's available as a disk:
>> 
>>       VBoxManage internalcommands createrawvmdk -filename
>> /Users/gary/Desktop/soas-2-blueberry.vmdk -rawdisk /dev/disk1 -register
>> 
>> 6) In VirtualBox create and configure a VM as normal, you should see the
>> soas-2-blueberry.vmdk listed as an available existing disk.
>> 
>> 7) All done, time to boot...
>> 
>> Regards,
>> --Gary
>> 
>> P.S. There's another way of getting VirtualBox to boot the USB stick on the
>> Mac, but I'll give it a couple of tries before reporting back here.
>> 
>> _______________________________________________
>> SoaS mailing list
>> SoaS at lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/soas
> 
> Gary,
> 
> There is an easier way!

That's what I like to hear! :-)

> I have created a Virtualbox VM that is basically the boot helper CD on a
> very small virtualbox disk. This is programmed to look for the device named
> FEDORA for boot.

Fab, can you point me to where I can download it (have been digging/searching without luck)? I was hoping the official USB Boot CD image would work for this, it does boot up, but then can't get at the USB and complains it has no root.

> 1) Plug in USB
> 2) Open Finder. Eject USB.
> 3) Start Virtualbox VM
> 4) Click Devices Menu, Click USB Devices, select the USB stick.

Can you avoid step 2 and step 4 by configuring the VM settings and adding the USB stick (under the "Ports" settings you can add a filter for a specific stick)? When the VM starts it will automatically grab the filtered stick, un-mounting it from the host, and mounting it on the guest – same as fiddling with the USB Devices pop-up, but without the fiddling :)

> I tried to write an Applescript to automate ejecting and connecting the USB
> to the Virtualbox and ti works reliably on my Macbook but we had trouble
> testing on other Macs.

Happy to give it a test here if needed.

Regards,
--Gary



More information about the SoaS mailing list