Grub is short for GNU GRand Unified Bootloader. To be simply put, it’s a boot loader package from the GNU Linux project. It’s the common and reference implementation of a multiboot Linux system. It allows you to choose which operating system or specific kernel to boot into.
Repairing a broken Grub 2 bootloader:
Grub now features an advanced rescue mode, truly a godsend for people who somehow messed their MBR tables up.
You want to trigger that and get into grub. Then execute the commands below to get back into a working desktop first.
ls
set prefix=(hdX,Y)/boot/grub
set root=(hdX,Y)
set
ls /boot
insmod /boot/grub/linux.mod
linux /vmlinuz root=/dev/sdXY ro
initrd /initrd.img
boot
The X and Ys are to be filled in with your own HDD information. If you only have one HDD, it’ll be X=0, Y=1 and so on.
At this point, you should at least be able to boot up normally. You’re almost done.
sudo update-grub
sudo grub-install /dev/sdX
Execute those two commands, replacing X with the partition your linux is installed on. You’ve fixed your broken ‘auto-updated’ MBR records.
Fixing grub error 17/15
Grub error 17 is one of the most common error messages that you’re likely to encounter using the Grub bootloader. The root cause behind it is a messed up partition table disk order.
To fix this, grab a live cd and boot into your desktop.
Execute the following:
sudo fdisk –l
You’re likely to get something like the following:
==========================================
Disk /dev/sdb: 750.1 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000dc2a4
Device Boot Start End Blocks Id System
/dev/sdb1 1 1275 10238976+ fd Linux raid autodetect
/dev/sdb2 1275 91074 721306624 fd Linux raid autodetect
/dev/sdb3 91074 91201 1022976 82 Linux swap / Solaris
===========================================
Partition table entries are not in disk order
If the bolded line exists, you’ve just found your problem.
Fixing this is easy. Execute the following.
sudo fdisk /dev/hda
hda as in the whole hard disk, not hda1 or stuff like that.
choose option x (extra functionality (experts only)) and enter.
then select f (fix partition order) and enter.
then select option w (write table to disk and exit), and enter. You can exit now.
Now, you need to finalize this in grub.
$ sudo grub
grub > root (hd0,1)
grub > setup (hd0)
grub > quit
Obviously, you need to know which HDD houses your OS and replace the 0,1 and hd0 accordingly. Grub error 15 can be fixed in the same way as well.
==========================================================================