Can't boot without Flash Drive plugged in

I had Ubuntu 12.04 Beta installed on my computer. When 12.04 was finally released, I made a bootable USB Flash Drive using Startup Disk Creator.

Then I decided to check if this drive works properly and to reinstall the system on my desktop. I must add, my desktop behaves a bit strange when it comes to bootable USB's, it recognizes them as HDD.

In BIOS I changed priority of boot so USB Flash Drive (recognized as HDD) was first. Successfully booted, I installed Ubuntu. Everything worked fine, but...

Now I cannot boot from my real HDD. Every time I want to boot, I put the USB Flash Drive into my computer, boot, safely remove it and everything works.

What do I need to do to repair boot?


Solution 1:

It looks like Grub got installed to the USB drive. Boot with the USB drive, open a terminal window by pressing Ctrl-Alt-T then run

sudo grub-install /dev/sdX

Where sdX is the drive you wish to boot from. That command will install GRUB to the MBR of the desired hard drive (sda,sdb,sdc,sdd), which should make it bootable. The commands sudo fdisk -l or lsblk should help you identify which drive you want.

Solution 2:

Boot-Repair

The problem

Grub, Ubuntu's bootloader, was installed on the flash drive, and not on your internal hard drive, as it should have been.

Solution

Boot with the flash drive plugged in. Remove it once Ubuntu is booted up.

Run the following commands from a Terminal:

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair
boot-repair

Click on the "Recommended repair" button, and reboot.

Explanation

Boot-Repair installed Grub to your internal hard drive. This allows your computer to boot without depending on the bootloader that was installed on the flash drive.


Glossary

Bootloader: a piece of code that runs before any operating system is running. A bootloader is used to boot other operating systems. Each operating system usually has its own bootloader.

GRUB (Grand Unified Bootloader): a bootloader package developed to support multiple operating systems and allow the user to select among them during boot-up. It is Ubuntu's default bootloader.

Command, command line: the traditional Unix environment , where you type commands to tell the computer what to do.

Terminal: an application that allows you to access the command line. Open it by hitting its keyboard shortcut, Ctrl Alt T

Solution 3:

You could also try to use repairing software e.g. boot-repair-ubuntu from ppa:yannubuntu/boot-repair

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair

Solution 4:

I had this problem when trying to install Ubuntu from a persistent USB drive. I started over with a non-persistent USB and it worked fine. It wasn't ideal, but it worked.