Wednesday, December 22, 2010

Natty Narwhal 11.04 Alpha 1 with WUBI

So the adventurous often want to try out development releases of Ubuntu and what better way to test than with Wubi - in theory. In practice though, Wubi isn't the main focus and usually only gets considered closer to the release.

But curiosity killed the cat... so here goes:

1. Windows install
I use zsync to keep a current copy of the daily live image of the Natty desktop-i386.iso. Since the .iso change so frequently it saves time and ensures you always have an up to date copy. I extract the wubi.exe from it and copy both the .iso and wubi.exe to the same folder in Windows. Then run wubi.exe.
The Windows install GUI looks good - it's identical to previous releases except it shows 11.04 - and when finished, asks to reboot.

2. Ubiquity install
So the first problem is the wubildr is bad. When you select Ubuntu from the Windows Boot Manager it hangs at Try (hd0,0) Wubildr. Replacing this with a wubildr from a Maverick install works fine and gets you to the second phase of the installation. (Note, in my case I had to replace wubildr on my first partition - a hidden rescue partition - not just the wubildr on my Windows partition. I did this via Ubuntu as it's not visible from Windows.
  • Grub error during installation
After fixing the wubildr, the Ubiquity installer proceeds as normal with the slideshow. Until a popup appears entitled
Bootloader install failed.
Sorry, an error occurred and it was not possible to install the bootloader at the specified location. How would you like to proceed?
  • Choose a different device to install the booloader on (empty drop down box)
  • Continue without a bootloader (PICK THIS ONE)
  • Cancel the installation
You'll be warned "You will need to manually install a bootloader in order to start Ubuntu" 
3. Booting the installed Natty
After installation, the first attempt to boot Natty drops you at a grub prompt.
GNU GRUB version 1.98+20100804-5ubuntu2.
I attempt to boot the install:
grub> configfile (hd0,msdos2)/ubuntu/winboot/wubildr.cfg
error: no such device: /ubuntu/install/boot/grub/grub.cfg
error: no such device: /grub.cfg
It is not possible to boot from the Ubuntu image.
Please verify blah blah blah and run chkdsk /r
So it turns out - after some investigation - that there is no /boot/grub/grub.cfg - when I skipped installing the bootloader it failed to create it. OK, no prob, just do a manual boot:
insmod ntfs
set root=(hd0,msdos2)
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /vmlinuz root=/dev/sda2 loop=/ubuntu/disks/root.disk ro
initrd /initrd.img

I then chose the classic desktop, as my last experience with the new Unity desktop didn't go so well:
Apart from a bunch of Error popup windows for panel objects that failed to load everything looks good.

First experience...
It looks pretty much the same as Maverick, but I notice there's now a "Root terminal" in Accessories. Love it! This is where I found the actual problem with the booting: there is no grub.cfg. I guess the grub error in ubiquity caused that part to be skipped. There's a so I just renamed that.

I decided to try out the new Unity desktop again, but it didn't work - I'm testing on my old junk PC with an ATI radeon 9000 card!

So now it's time to reboot and I discover that the Maverick wubildr is not compatible with the new Grub - every time I select Ubuntu the computer reboots. Back to the manual boot (I have another Ubuntu install so I can get to a grub prompt).

Rebuild wubildr...
Clearly Grub has changed radically - surprise surprise. It now refers to the drive as /dev/sda instead of hd0. So, that's probably why it's rebooting. Let's try regenerating the wubildr file. Oops logged in to the Unity desktop by accident... PS to logout I had to create a launcher on the desktop with command: /usr/bin/gnome-session-save --kill as I couldn't access any menus.
Then, to rebuild wubildr from root terminal: grub-install /dev/sda2 (don't try this on non wubi installs, also don't try it on wubi installs that aren't on the same partition as Windows's C: drive).

Ubuntu, Linux 2.6.37-10-generic

And it boots! Happy testing everybody*

(*And by everybody, I mean, those that consider their computers to be test machines - this is an early alpha release so you need to be prepared for disaster).

PS my windows is on /dev/sda2 - all places that refer to (hd0,2) or (hd0,msdos2) and /dev/sda2 are based on that.

No comments:

Post a Comment