Running gOS under QEMU on Ubuntu

I'm stuck on the couch with my knee elevated after having had surgery on Tuesday. I tore my meniscus playing Ultimate (a non-contact sport if ever there was one. I think I've just decided that cleats are the root of all evil). So, being stuck on the couch, I've been reading a lot and playing with my computer, of course.

I downloaded the CD image for gOS a couple weeks ago, and I finally decided to give it a try. I couldn't just burn it to a CD and boot it up though. Where's the fun in that? I decided to try it under kvm on my Ubuntu Gutsy Gibbon box instead. Turns out, that doesn't work. It just crashes with the cryptic message, "exception 6 (0)" and some kind of register dump.

Since you have to install qemu in order to run kvm, I tried running it under qemu next. It started to boot, but then got to a point where it just dropped me to a busybox shell with a prompt like this:

(initramfs) _

Turns out, after some googling, that this is a known issue, and this workaround worked for me:

In the boot menu
 1. Push F6 ( Other Options)
 2. remove: "quiet splash --"
 3. add: "break=top"
 4. Push Enter

Later when you see "/bin/sh: can't access tty; job control turned off"

type the following:
 modprobe ide-generic
 exit

...Start from CD image continues :-)

It then took a while (this is with the kqemu kernel module installed), but once it was all booted up it ran pretty darn well. I was impressed with the smooth little toolbar at the bottom of the screen with icons for all the google applications. Very nice idea. I'm impressed with qemu too. Once I followed the instructions I linked to, it was easy to set up and runs things pretty quickly. It was a fun little adventure while icing my knee on the couch.

Comments

Anonymous said…
Great tip!
I was getting crazy trying to install gOS on a virtual machine.
Maybe this how-to will be useful to install on old machines too.

Popular posts from this blog

SystemVerilog Fork Disable "Gotchas"

'git revert' Is Not Equivalent To 'svn revert'

Put /etc Under Revision Control (with git)