Friday 3 August 2012

Couldn't boot to Windows even if I wanted to

Ubuntu 12.04 Precise Pangolin
Windows XP
Grub 2

One of my computers is a dual-boot Linux/WinXP machine, with the two OSs on separate hard drives.  At some point, the Windows option disappeared from the boot-loader.  I don't know why, and, as I don't actually use this machine much (mostly my wife uses it), I'm not entirely sure when.  However, eventually she wanted to boot to Windows, and it wasn't on the menu!

I checked the scripts in /etc/grub.d/ and all looked fine, so I ran update-grub, but no luck.  No error messages, but the os-prober script did not find the Windows installation.  I could mount the NTFS partition, and if I swapped the disk boot order (in the bios) then Windows booted without a problem.  Googling around, I found plenty of people with similar problems, but none quite lined up and none of the solutions worked for me.  I had a quick stab at making a grub script by hand, but it didn't work.

A couple of times I saw references to /boot/grub.d/device.map, a file I did not possess at all.  Obsolete information or a problem with my install?  In any case, it's easy to make one: sudo grub-mkdevicemap.  Now when I ran update-grub, os-prober found WinXP. Problem solved.

By the way, there's a great Grub 2 tutorial courtesy of Dedoimedo.

No comments:

Post a Comment