I recently decided to upgrade my laptop to windows Vista, which was in a dual boot configuration between windows XP and Ubuntu, after the upgrade I was no longer able to boot into Ubuntu, and that is because the last OS installed usually overwrites the MBR (Master Boot Record), so in this tutorial we will go over the process of bringing your pc back to dual boot after upgrading your XP installation to Vista, on a side note, don’t forget that this method described here puts GRUB back in the MBR (Master Boot Record) of the hard drive instead of the root partition, this is usually fine, unless you have an alternative boot manager like Boot Manager or System Commander, the GRUB will override what you’ve got. Also if you install the GRUB to the root partition of your installation instead of the MBR, the commands here described may be a little different.
Here are the instructions for my system:
1- Boot from a live cd, in my case I use sysrescuecd live cd, but you can use any like: knoppix, ubuntu, etc..
2- Open a terminal window and type sudo -i enter password if necessary, and type grub,
3- Next type find /boot/grub/stage1 and press enter, you should get something like (hd0,1) which is your Ubuntu partition in this case.
4- Next type root (hd0) and press enter.
5- Type setup (hd0) if you plan to write GRUB to the MBR of the hard drive, and not to the root of the partition
6- Type quit
7- Reboot the system and remove the boot cd, now you should be able to see the GRUB menu with the options to either boot to Ubuntu or Vista.