How To Fix GRUB To Get Back Ubuntu After Installing Fedora
With Fedora 15 having been released with GNOME 3, a lot opeople including Ubuntu users would be installaing it. I too installed it along side Ubuntu only to find out that Fedora's GRUB menu list does not list Ubuntu at all. Fortunately, getting back Ubuntu's GRUB is very easy and it supports Fedora 15 as well. Here is what you need to do.
Note: You can use this same method to recover Ubuntu after installing Windows too.
What you need
You need a bootableUbuntu CD or USB of the same architecture as that which the Ubuntu installation has. For example, if your installed Ubuntu is 64-bit, the bootable media has to be 64-bit as well. Also make sure that the bootable media is a recent version of Ubuntu.
Getting back Ubuntu
Boot into the live media. You might have to press certain button (depending on your hardware) to access the boot menu.
After you are in the live Ubuntu session, open the Terminal and and execute the command below to find out the location of your Ubuntu instalation.
$ sudo fdisk -l
You will get an output like that shown in the picture below.
In my case, /dev/sda5 is where Ubuntu is installed and Fedora is installed installed at /dev/sda7. I am going to continue with the rest of this tutorial assuming that Ubbuntu is at /dev/sda5. Substitute it with your location wherever applicable.
Now, mount /dev/sda5.
$ sudo mount /dev/sda5 /mnt
If you have /boot on a seperate partition, you have to mount that as well. Assuming that /boot is at /dev/sda4, here is what you have to do,
$ sudo mount /dev/sda4 /mnt/boot
After that mount the following,
$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys
Now, use chroot to make you the root with /mnt as the root directory.
$ sudo chroot /mnt
If you had booted inro a live media with different architecture from that installed, you will get an error when you execute the command.
Now, update GRUB to reflect the changes - that is the newly installed Fedora 15.
# update-grub
Finally install GRUB in the MBR.
# grub-install /dev/sda
Now reboot and you will have Ubuntu's GRUB back with Fedora listed as well..
# reboot