SuperGrubDiskProblems

From Super Grub Disk Wiki
Jump to: navigation, search

TODO: Put numbers in every step like in Spanish translation.

First of all you should know that you can boot into your system with the Boot Linux option without having to fix grub.

Super Grub Disk hangs when embeding stage1_5.

When using Super Grub Disk to fix Grub boot I see:

running "embed /boot/grub/e2fs_stage1_5 ( hd0)"...

and SGD seems to hang.

You can try to do:

  • Choose Language & Help
  • English
  • Advanced
  • GRUB
  • Restore GRUB to MBR
  • Restore GRUB to MBR (NO stage1_5 link).
  • Select your Linux partition
  • Select your first hard disk

If it does not work you can also try to run fsck -yc to your root partition from a live cd to see if that helps. Something like:

fsck -yc /dev/sda3


SGD seems to work ok. I see the GRUB menu but when booting my Linux I see: Error 17 : Cannot mount selected partition.

This error happens when you have migrated your Linux distribution or you have created new partitions and the Linux root is another one.

In order to fix it you need to edit your current /boot/grub/menu.lst, search your Linunx entry... edit its root line and modify its partition. I mean you can find something:

title Ubuntu, kernel 2.6.15-25-386
root (hd0,1)
kernel /boot/vmlinuz-2.6.15-25-386 root=UUID=2592837FKAJLFJASFASORI7239573495273Y95LKDF ro quiet splash
initrd /boot/initrd.img-2.6.15-25-386
savedefault
boot

and you might have to change it like this:

title Ubuntu, kernel 2.6.15-25-386
root (hd0,3)
kernel /boot/vmlinuz-2.6.15-25-386 root=UUID=2592837FKAJLFJASFASORI7239573495273Y95LKDF ro quiet splash
initrd /boot/initrd.img-2.6.15-25-386
savedefault
boot

But... here there is the question. How do you find your particular case value?

Boot with Super Grub Disk, go to Super Grub Disk with Help -> Boot & Tools -> Show partitions Select your Linux hard disk and then just look for a line that contains your Linux name. In the beginning of the line, below the GRUB column you will see something as: (hdX,Y). Just write it down to a paper so that you can use it later.

Now reboot. (Press enter to go outside from Show partitions menu and then go back till you can select Exit menu and reboot.) And boot with a Ubuntu Live cd (or another Live cd), edit your Linux partition /boot/grub/menu.lst, find the kernel line from your Linux usual boot, put the value you had written down in the root line substituing the old one.

Save the file. Unmount your Linux partition. Reboot.

Now Grub menu should appear again and when selecting the edited Linux entry it should boot ok.

But there is still some work to do.

From your system you should edit /boot/grub/menu.lst as root and find these three lines:

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd1,0)

You should write down your found new Linux partition next to groot= instead of the old one.

Now you save the file and you open a terminal as root and run: update-grub. This should fix not only the default Linux boot entry but all of the other boot entries and next time your Kernel/System is updated you will not have any problems.

TODO: Write about error 15 and 22.

Fix Boot of Linux does not seem work

If you are able to boot your Linux from SGD you can:

  • Open a Terminal (Gnome Toe -> Applications -> System or Utilities -> Terminal)
  • Check what's your first hard disk with fdisk -l
Disk /dev/sda: 251.0 GB, 251000193024 bytes
255 heads, 63 sectors/track, 30515 cylinders
Units - cylinders of 16065 * 512 = 8225280 bytes
Device	Boot	Start	End	Blocks	Id	System
/dev/sda1  *	1	10171	81698526  7	HPFS/NTFS
/dev/sda2	10172	10426	2048287+ 83	Linux
/dev/sda3	10427	20342	79650270  5	Extended
/dev/sda4	19966	20342	3028221	 82	Linux swap/Solaris
/dev/sda5	10427	10725	2401654+ 83	Linux

Let's suppose that it is sda.

Run:

sudo -i # in ubuntu
su # in debian

Type your root password and press enter. Run:

grub-install /dev/sda
sync
shutdown -r now # This way you reboot

After rebooting grub should be back.