How to fix GRUB 2 with Ubuntu live cd

This post is over 3 years old, so please keep in mind that some of its content might not be relevant anymore.

Sometimes happens to “break” the GRUB and make our computer unbootable or, anyway, not booting the way we want it to.
Usually this happens when we test/install a new operating system or maybe simply because we are “playing” with the GRUB.

NB: I’m going to explain how to restore GRUB 2 (tested on Ubuntu Lucid). For how to restore/fix GRUB 1, here is a good starting point.

So, let’s get going. My favourite procedure is using Ubuntu Live CD.
So, once Ubuntu live OS is up and running we can start…

Let’s create a directory where to mount the Ubuntu file system we want to fix the GRUB for.

sudo mkdir /mnt/newroot

Now we have to mount our hard drive/partition under the “newroot” directory just created:

sudo mount /dev/sdxy /mnt/newroot

where “/dev/sdxy” is our device name.

Then we need to mount some system directories under our “newroot” with:

sudo mount ‐‐bind /dev /mnt/newroot/dev
sudo mount ‐‐bind /proc /mnt/newroot/proc
sudo mount ‐‐bind /sys /mnt/newroot/sys

This needs to be done in order to make them available under our “newroot” too.

We are now ready to change the apparent root directory with:

sudo chroot /mnt/newroot

The “hard” part of the job is done. Now we can easily install and update the GRUB like if we were running the OS on the hard drive (rather than the live cd as we actually are).

sudo grub-install /dev/sdx

(where “/dev/sdx” is the device name) and

sudo update-grub

That’s it.

Hope it helps! :-)

Leave a Reply

Your email address will not be published. Required fields are marked *