Tuesday, May 3, 2011

Installing Wubi - common problems

Since the release of Natty Narwhal 11.04 a few days ago, I've been monitoring various support forums looking for issues. The good news is that I'm not seeing anything new and exciting, just the standard problems users have with installs. So that's good, but I realised that now is probably a good time to catalogue some of these common problems - and their solutions (if they exist).

Wubi installs involve two distinct processes. First the Windows install where you select the user name and password, the target drive, and the size of the install. Wubi then finds a local desktop CD image or downloads one, creates virtual disks, modifies the Windows boot manager, sets up a special file with installation instructions and tells you to reboot.
The second part is when you reboot and select Ubuntu from the Windows boot manager. This boots a linux kernel (through grub4dos and grub2), and then runs the standard Ubuntu installer (Ubiquity), which uses the special installation instructions created in Windows - so that no user interaction is required  (usually).

Important info
If you want an Ubuntu CD/USB: go to http://www.ubuntu.com/download/ubuntu/download (step 2, click on medium, and then SHOW ME HOW)
You can run wubi from the CD or standalone. If you run it standalone you can download the desktop CD ISO yourself and place it in the same folder as wubi.exe and it will use it (must be the same release).
You cannot install from an alternate ISO or a DVD ISO (burning a CD ISO to DVD is okay). Installing from a USB will fail if the USB partition is > 890MB (and it will copy the entire partition to your hard drive before failing - and that could be an 8GB file, so be careful).

When Wubi fails in Windows you should check the log file or post it on a support forum for help. To find the wubi log file, go to the %temp% folder (enter %temp% in your Windows explorer address bar) and open the file wubi-nn.nn-revnnn.log (n's represent release and wubi.exe revision)

Windows issues
  • Failure to download the metalink. Either you don't have internet access or you are installing 11.04 and you select Ubuntu-netbook. I mentioned the 11.04 Netbook problem in my last post, so nothing further to add there. 
  • You select to install to a drive that is actually a Dynamic disk. These are Windows specific and it won't let you 'boot from them' - and Ubuntu cannot see or boot from them either (unless they also happen to reside in the MBR partition table - in which case you run the risk of destroying data on dynamic drives that do not).  Solution: DO NOT INSTALL on dynamic drives. Either get rid of them or find an external drive.
  • You get a firewall notification asking whether to allow "pyrun.exe". This is the python executable that is actually running Wubi - and it is uses a bittorrent downloader to retrieve the desktop CD image. You need to give it access or the install will fail. Alternatively download the desktop CD ISO and place it in the same folder as wubi.exe (and ALSO remove the bad CD or wubi.exe will find it and fail again).
  • The CD was not created correctly (a bad burn). If you look in the wubi log it will tell you the md5sum failed or some other error (Errno13, 22). Solution: create a new CD or run wubi.exe standalone.
  • It's downloading the wrong version 64bit. It's not actually the wrong version. Wubi defaults to 64bit when the computer is capable (and some users do not know that their computers are 64bit). If you want 32bit then download the 32bit version and a) place it in the same folder as wubi.exe, b) burn it to CD or c) specify the command line option --32bit when running wubi.exe
  • IOError: [Errno 22] or [Errno 13]. This error can be associated with a bad burn, bad image, or even an optical drive incompatibility. Most likely a bad burn. You can either boot from the CD and get it to check itself, or remove the CD, and run wubi standalone (with or without the downloaded desktop CD ISO in the same folder). If you are not running from a CD, Errno13 can be associated with a permissions error (run as an administrator) or a corrupted file (run chkdsk).
  • Pyrun.exe says "No disk". This looks like a tight loop but it's not. Usually it's caused by a disk 'drive' assigned to an empty drive like a multimedia card reader. Either remove the cardreader or other peripheral or click cancel many times to get through it. To kill the install process open up task manager and kill pyrun.exe.

Please note - if you have an Ubuntu CD (matching the release and flavour of wubi.exe) in a disk drive, Wubi.exe (even if run standalone) will find it and use it. If the CD has a bad checksum or bad burn, it will cause the installation to fail - Wubi.exe might go through the motions of downloading a new CD, but often the first error will be fatal. 

When you reboot from Windows to complete the installation, and select Ubuntu the errors you encounter are related to the Windows boot manager, grub4dos, linux/hardware compatibilites, and the Ubuntu installer (Ubiquity).

Ubuntu/Ubiquity issues
  • If you find it boots straight back into Windows, then either Wubi failed to add an entry to the Windows Boot Manager, or the Windows boot manager Timeout is set to 0. In both cases, let it boot, right click on (My) Computer, Properties, Advanced, Startup & Recovery settings... and check the Timeout - make it 15 or more. Check the drop down box to see if the Ubuntu entry is there. NEVER set Ubuntu as default and the Timeout to 0 or 1 or Windows won't boot.
  • "Try hd(0,0): xxxx: No wubildr". This is not an error. Ignore it unless it accompanies "grldr not found". See one of my previous posts on this.
  • Reboots back to the Windows boot loader or grub> prompt. See the Wubi megathread, problem #2 (This won't happen on an initial install)
  • Grub rescue> prompt. See the Wubi megathread, Problem #1. (This won't happen on an initial install).
  • If you never get to see the installer, then you are having a problem booting the linux kernel. There could be a number of reasons... graphics card, other device incompatibilities. The best thing to do is search the support forums (e.g. ubuntuforums.org) for your particular computer brand/model and the specific release - often someone else has figured out what you'll need and published it. See here for how to supply boot workarounds.
  • You installer starts, but you get the message "no root file system is defined"This is often caused by Ubiquity failing to read the target partition. This message can also occur on a normal install,for a different reason (user error) but with Wubi there is no user interaction to select the target root partition. Some common causes are: you have some leftover GPT partition table data when you're using an MBR partition table; you have some fakeraid metadata but are not using raid, or you're using an unsupported Raid. In all cases, it's best to run the bootinfoscript and create a request for help on the forums to find a solution.
  • Other problems. If the installer halts for any reason, you have to collect logs otherwise no one will be able to do anything about it. Drop to terminal (CTRL+ALT+F2) and collect the logs (to \ubuntu\installation\logs.zip): 
sudo sh /host/ubuntu/install/custom-installation/hooks/failure-command.sh