I have a big problem with my computer...

I have reduced the windows partition and when I reboot then I have the grub rescue with the error message: "no such partition".

Moreover, I don't have access to the bios and so it seems impossible to change the boot sequence to boot on my live usb or live cd.

The command line ls gives me: (hd0) (hd0,1) (hd0,2) (hd0,3)

I have a recovery windows partition (1 I think), a windows partition and a linux partition.

Yet, the command lines ls (hd0,1), ls (hd0,2) and (hd0,3) gives me the error message: "unknown filesystem" and so I can't set a boot anymore.

Do you have any idea?

  • 1
    Do you have Windows 8? – enedil Jul 4 '14 at 10:38
  • 3
    Have a look at this answer ... – Amr Ayman Jul 10 '14 at 11:35
  • 2
    why cant you access your bios it has nothing to do with grub – Sudheer Jul 10 '14 at 14:25
  • 1
    can you access you bios setting – Sudheer Jul 10 '14 at 14:33
  • 2
    Before grub screen when your computer logo comes you should see "esc for setup" like that – Sudheer Jul 10 '14 at 14:35

The grub rescue> prompt signifies that GRUB 2 has failed to find the grub folder, the grub.cfg file, and/or the associated modules. The rescue prompt is presented so the user can provide the path to the grub folder, load the necessary modules, and provide the proper boot commands. A common reason for the grub rescue> prompt is an incorrect path to the grub folder. Reasons for the prompt also include a failure to update GRUB 2 after certain system or partition operations, improper designation of the grubfolder location, missing linux or initrd.img symlinks in /, or a failed installation. To successfully boot from the grub rescue> prompt:

  1. The grubfolder must exist and contain the necessary GRUB 2 files and modules.
    2. The proper paths must be set via the set prefix command. Many GRUB 2 commands will not work until the correct path is set. If the path to the grubfolder (normally/boot/grub) is not correct, an unknown command or file not found message is likely.
  2. The necessary modules must be loaded. The kernel cannot be loaded until the 'linux' module is loaded.
  3. A Linux kernel and initrd.img must be located and loaded.

In your case the grub folder and grub.cfg is seems to be available but inaccessable because your OS's partition can't be mounted, as the corresponding module is not loaded or it is corrupted during resizing. For the module to load your grub should be completly loaded or prefix should be set. For that do the following:

  1. set prefix=(hdX,Y)/boot/grub
    Use the values determined earlier. Example: If the Ubuntu system is on sda5, enter: set prefix=(hd0,5)/boot/grub
    In your case it most probabily is (hd0,3)
  2. set root=(hdX,Y)
    Confirm the correct X,Y values and press ENTER. Example: If the Ubuntu system is on sda5, enter: set root=(hd0,5)
  3. insmod normal
    Load thenormal module.
    If the module loads there will be no message. If the module fails to load, try the full path: insmod (hdX,Y)/boot/grub/normal.mod
  4. normal Transition to the normal GRUB 2 mode with increased functionality. If the module loads there will be no message. If the module loads, HELP, TAB completion and command recall using the UP/DN keys should be available.
  5. set (Optional) Review the current settings.
  6. insmod linux Load the linux module. An error message usually means the path is incorrect.
  7. configfile /boot/grub/grub.cfg . This should load your configuration file that allow to boot all OSs.
| improve this answer | |
  • 1
    Use the values determined earlier. in step 1, but can you please tell whats that command – dev_ry Aug 25 '17 at 5:41
  • 1
    I have to do this every time I boot. How can I fix this permanently? – Md Narimani Jan 13 at 20:28

As stated elsewhere, the correct command is ls (hd0,1)/. Please try to see if that will list the contents of the file system.

To load your system manually in grub

If vmlinuz and initrd.img do not exist at (hd0,3)/, you have to specify their exact location to boot into linux. So, in grub (please adapt vmlinuz and kernel versions to your setup)>

set root=(hd0,3)
linux (hd0,3)/vmlinuz root=/dev/sda3 ro

or if (hd0,3)/vmlinuz does not exist:

linux (hd0,3)/boot/vmlinuz- root=/dev/sda3 ro


initrd (hd0,3)/boot/initrd.img 

or if (hd0,3)/initrd.img does not exist:

initrd (hd0,3)/boot/initrd.img-2.6.33-25-generic 

More info can be found here.

| improve this answer | |
  • 1
    After you get it booted manually, Run Boot Repair to fix your Grub - Here's just one of the many sources regarding how to do this: howtogeek.com/114884/how-to-repair-grub2-when-ubuntu-wont-boot – Elder Geek Jul 13 '14 at 18:19
  • I get: Unknown command `linux'. With ls I do see that vmlinuz and initrd are on (hd0,msdos5) – Bram Jun 5 '15 at 23:48
  • @Bram please open a new question on that, it might be a different issue, or search for other more fitting questions here – noleti Jun 9 '15 at 4:45
  • In my hp 15-ac026tx 'Ubuntu 18.04's case, both the vmlinuz and initrd.img were present in root, but it was "(hd0,8)/" instead of (hd0,1)/ , it shows "(hd0,msdosY) where Y is 123..89 etc number, but I did not need to type full (hd0,mados8)/ , only (hd0,8)/ worked as well the full fledged one. – Harshiv Jun 22 at 11:35

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