Recently I messed up GRUB boot loader in my laptop installed with Ubuntu which resulted in grub rescue prompt. So I had to boot Ubuntu Live CD to get it fixed. Thought of blogging it, may be useful for some one.
This fix involves two steps. First one is to chroot into Ubuntu installation partition. Second one is to install the grub MBR (Master Boot Record). I am using Ubuntu Lucid 10.04 and Live CD also of same.
Step-1: Boot your machine with Ubuntu Live CD and select Trying Ubuntu without installation option when it is prompted (Live CD mode)
Step-2: Be patient till you get complete desktop ready.
Step-3: Ubuntu main menu -> Places -> Home Folder -> Look for other partitions listed on left hand side pane. Mount one by one and identify your Ubuntu root partition. When you are in your root partition, press Ctrl+L to view the complete mount path. Press Ctrl+C to copy this path. This path is normally /media/xx..xx kind of long path, where xx..xx denotes your hard disk partition unique id.
If you know your Ubuntu root partition you can replace the above GUI step-3 with simple mount command like this (Applications -> Accessories -> Terminal):
$ sudo mount /dev/sdax /mnt/myroot (where sdax is your root partition)
Let’s say you have mounted root partition at /media/xx..xx.
Step-4: $ Run the terminal through Applications -> Accessories -> Terminal.
Step-5: Run the following commands to export the pesudo file system of Live CD to your would be root file system soon.
$ sudo mount ‐‐bind /dev /media/xx..xx/dev
$ sudo mount ‐‐bind /proc /media/xx..xx/proc
$ sudo mount ‐‐bind /sys /media/xx..xx/sys
Step-6: Changing the root file system of live system to your hard disk installed root file system.
$ sudo chroot /media/xx..xx
Step-7: Installing GRUB Boot record in Master Boot record of your hard disk. My hard disk is sda. Replace your hard disk device node in the following command.
$ sudo grub-install /dev/sda
Step-8: Reboot the Live Ubuntu. Eject the CD.
Now you should get boot menu for your Ubuntu installation back. Enjoy the Ubuntu!