Well, the cool thing about this thread originally was to let people know they didn't need to chroot every time to re-install GRUB2 as was widely believed at the time and probably true in earlier editions of GRUB2.
So any idea where I go from here?
I guess since this method doesn't seem to be working for it it's time to get serious with it.
Let's revert to the chroot method and chroot into your operating system, tell it who's the boss and make it do as it's told.
Here's my favorite chroot thread, the following Ubuntu Web Forums thread: how to chroot, simple and fast, by taavikko.
1. Mount your Ubuntu file system, (in your Ubuntu partition).
You can use just go 'Places'-->'Removeable Media', and click on the icon representing your desired partition for mounting now in all modern versions of Ubuntu.
2. Check in your /media directory to find out what the name of your mount point is,
NOTE: If you have neglected to set a file system label, your file system may appear as a UUID hash instead of a user freindly name.
To make things easier for yourself in future, see How To Set File System Labels With GParted - recommended.
From now on, I'm going to use the word 'mountpoint' to represent whatever the name of your mountpoint is actually named in /media. Please replace the word 'mountpoint' with whatever the actual name of your own mount point is for the rest of these commands.
@ckadlubek, I know your mountpoint is 'KARMIC", but I'm also writing this for others who might also refer to this post in the future.
sudo mount -o bind /proc /media/mountpoint/proc
sudo mount -o bind /dev /media/mountpoint/dev
sudo mount -o bind /dev/pts /media/mountpoint/dev/pts
sudo mount -o bind /sys /media/mountpoint/sys
sudo cp /etc/resolv.conf /media/mountpoint/etc/resolv.conf
sudo chroot /media/mountpoint /bin/bash
NOTE: You don't need to type the hash mark, that should be already there to show you are 'root' in the operating system you just chrooted into.
# grub-install /dev/sda
WHERE: /dev/sda, (which indicates the MBR of your first hard disk), is where you want to install the code to that will make the MBR point to GRUB in your Ubuntu partition.
sudo umount /media/mountpoint/proc
sudo umount /media/mountpoint/dev/pts
sudo umount /media/mountpoint/dev
I'm sorry for putting you through such a big long list of commands, but the grub-install command should fix just about anything that could be wrong with your GRUB.
sudo umount /media/mountpoint
It does a lot more than the grub-setup command. The grub-install command runs a lot of other commands, including grub-setup, and it replaces all of your files in /boot/grub except grub.cfg, so if any of your GRUB files were missing or corrupt, grub-install would have replaced them with new ones for you.
The only drawback is all the extra commands you need to do in order to chroot first so you can run grub-install.
It's a good idea to learn how to chroot if you don't already know, because it can get you out of other tight situations you may encounter once in a blue moon, especially if you're like me and you like to be adventurous and try to do things with your operating system that most people wouldn't try.