Howto: Fixing GRUB After A Windows Installation and Fixing The GRUB Menu

January 25, 2008 at 7:48 pm | Posted in tips and tricks, xubuntu | 31 Comments
Tags: , , , ,

Windows is not really friendly towards other operating systems – when you installed it while another operating system is already installed, it will replace the bootloader with its own, without including any reference to that other operating system – preventing you from booting it. This is why it is often recommended to install Xubuntu after Windows. Sometimes, however, installed Windows afterwards is unavoidable. Restoring Xubuntu’s bootloader (GRUB) can be a pain.

Luckily, David Mooney comes to the rescue: in a post to the xubuntu-users mailinglist, he explains how to restore GRUB:

If for some odd reason you missed having the Windows operating system and you decided to install it on another partition, you will notice your GRUB is missing afterwords. This usually happens and is a huge headache for those trying to get their GRUB back. Here’s what you need to do to get it back:

Put your bootable Ubuntu/Xubuntu install disk in the CD drive and run it. Instead of installing anything, click on the menu to open the terminal application.

In terminal mode, type the following:

sudo grub
find /boot/grub/stage1
root (x,y)
setup (x)
sudo shutdown "now" -r

The resulting “find” command will display something like (hd0,1). In this example, you would then type root (hd0,1) and then setup (hd0) in the above area. These numbers might be different; that’s why I included the “find” command so that folks who might have their Ubuntu partitions located either in front or behind their Windows installation or on a completely separate internal/external hard drive so that you will get the appropriate/correct setup numbers.

Ok, now you got your GRUB-on, but what about that darn GRUB menu? It’s not displaying what you want it to display? Well, let just see here…

Upon reboot, select “Recovery Mode”, usuaully the second option down on the GRUB menu. This will allow you to boot into the root. Once you’re in the terminal mode, type:

editor /boot/grub/menu.lst

Well, the rest is pretty much self explanatory. There should be enough comments in the menu.lst to direct you to what you can and cannot do to your GRUB menu.lst.

I usually put the Windows option at the top of the menu so that others (none-Linux users) who use my computer can find it easily if they have to do a reboot. Your Windows installation will have a different root than your Ubuntu/Xubuntu, but it’s usually automatically placed by GRUB once it’s set up again (like the above). I also recommend removing the timeout option as this is sometimes annoying. Have fun!

-David 😀

P.S.- If you have a question, I’ll be happy to answer to the best of my ability.

Thanks David!

Blog at
Entries and comments feeds.