Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question already has an answer here:

I recently repartitioned my hdd and I have damaged grub on my system. On boot I get the grub rescue prompt and I have to go through the following steps in order to boot normally:

set root=(hd0,msdos6)
set prefix=(hd0,msdos6)/boot/grub
insmod normal

(Those steps were found on another post on here!).

I'm very tired of repeating this on every boot, how do I permanently fix grub?

share|improve this question

marked as duplicate by Eliah Kagan, Eric Carvalho, Seth, Thomas Ward, hhlp Mar 18 '13 at 9:53

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

The steps listed in the question to boot worked for me. One should remember linux's partition correctly though. – TheCrazyProgrammer Sep 12 '14 at 2:31
As others have said doing update-grub and then grub-install /dev/sda solves the problem. – TheCrazyProgrammer Sep 12 '14 at 2:34

I would try running update-grub in order to build grub.conf / grub.cfg again.

You can try also using grub-install, but I think this one won't help.

If you want to read more, check first which version you have (GRUB 1 or 2) by running:

dpkg -l | grep grub

If you have GRUB 2, you can use the following tutorial:

Of course be careful dealing with GRUB as we are talking about the boot process, which is a sensitive mechanism.

share|improve this answer
grub-install <correct-drive, i.e. /dev/sda> and update-grub2 finally did it for me on Ubuntu 15.04 – Greg Kramida Jun 28 '15 at 11:39

It seems to me that update-grub assembles the grub.cfg, but you also need to (re-)run grub-install (or grub-setup?) to update the MBR / boot sectors with the basic info -- on which partition to find the grub.cfg file & apparently these modules.

share|improve this answer

Two possibilities:

(1) Boot-Repair

(2) Super Grub Rescue Disk


share|improve this answer

When you get a GRUB rescue prompt, it means that the GRUB bootloader cannot locate its modules from the partition that contains them in /boot/grub. The reason for this is that the code that fits in the drive MBR record is tiny, and so its main purpose is to locate and load the rest of the bootloader code. Once it's loaded its modules it can present the GRUB menu and handle the rest of the boot process. If it can't find the modules, it presents a very limited rescue prompt.

So, what you are seeing is totally normal if you repartitioned, thereby breaking the reference the bootloader had to the partition containing the boot modules.

Since you can boot manually, the simplest fix is to manually boot and reinstall the bootloader in the MBR so that it has the correct reference to your partition. The way to do that is:

sudo grub-install /dev/sda

This assumes you boot from /dev/sda (most cases, but if not, replace it with the correct drive).

This solution is far simpler than using the boot-repair, but if you are unsure this may be more suitable.

share|improve this answer
+1 for explaining what's going on in easy-to-understand terms. – monotasker Apr 25 '14 at 13:57

The simplest way would be:

sudo apt-get purge grub-pc grub-pc-bin


sudo apt-get install grub-pc grub-pc-bin
share|improve this answer
This is a sledgehammer approach that will likely work, but it's simpler just to reinstall the bootloader to update the reference to the partition (which was broken by repartioning). – bcbc Dec 15 '12 at 17:38

Not the answer you're looking for? Browse other questions tagged or ask your own question.