EDIT:My problem stemmed from deleting a partition in my hard drive.
1) If you rebooted your machine and you stuck in grub menu then you can use a live DVD. After mounting your partition that your Ubuntu OS installed (in my case it switched from sda6 to sda5)
sudo mount /dev/sda5 /mnt
sudo grub-install --root-directory=/mnt /dev/sda
will fix the grub
2) If you delete a partition and you haven't rebooted it yet ( it won't boot since partition tables changed) then you can apply below guide to fix it.
Prior to breakage of grub it was installed on SDA6 partition, since I deleted partitions, partition table entries got out of order, naturally it won't boot.
sudo fdisk -l to check out a message like
partition table entries are not in disk order if you get that message
to fix it; issue commands
sudo fdisk /dev/sda then enter
f and finally
what they do
x (extra functionality - experts only)
w (write to disk and exit)
You may get a warning that devices are in use and the new table will be used at the next boot.
It should fix failing of grub at boot.
If you missed above step and you want to reinstall grub check out this link https://wiki.archlinux.org/index.php/GRUB#Install_to_partition_or_partitionless_disk
if you get a message like
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
no worries, it's just a warning message, just reboot your comp and your grub will be detected in the right partition.
Every time you alter partitions in your drive before shut down your comp, you must run
sudo fdisk /dev/sda to fix partition tables otherwise you end up with missing grub in the next reboot