44

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?

0

5 Answers 5

38

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.

8
  • 2
    What if /dev/sda isn't the drive GRUB should be installed on? Should this be addressed in this answer or is the boot-repair tool mentioned in knezmej's answer safer?
    – jamesadney
    Apr 27, 2012 at 19:08
  • If dev/sda is not the drive, the command won't work, and you'll have to use the appropriate designation, in other words, /dev/sdb, /dev/sdc, etc. Apr 28, 2012 at 0:45
  • 1
    "It looks like you've installed grub to the USB drive." I agree with everything except this. I just did an install and left everything as is, so it's seems the installer does this by default, which is really quite an oversight by Ubuntu. I guess their testers must be using install CDs.
    – Gerry
    Apr 28, 2012 at 21:11
  • When booting form USB and executing this command, the user won't require sudo, will he?? Aug 3, 2012 at 4:19
  • Why not? Wouldn't you get 'permission denied' error? I haven't tried it without sudo, to be honest. Aug 3, 2012 at 5:42
11

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

3
  • I followed all these instructions and I'm getting LegacyWindows detected. Please enable BIOS-compatibility/CSM/Legacy mode in your UEFI firmware, and use this software from a live-CD (or live-USB).
    – Некто
    Aug 5, 2020 at 23:20
  • I can confirm that this solved it for me. I had accidentally installed the Bootloader on the external drive. In UEFI GPT mode, my Linux Mint 19.2 started and closed without the external SSD drive after this. Dec 26, 2020 at 13:26
  • 1
    @Некто, you seem to have MBR partitioning scheme which is rather outdated (legacy is enebled in BIOS, modern systems usually have "UEFI-only" for GPT partitioning scheme checked instead). Dec 26, 2020 at 13:29
2

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
2

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.

0

It would be a good idea to mention to complete the following command:

sudo fdisk -l 

to determine where the HD logical partition is. In my case it was at the following address:

/dev/sdb therefore it was not working before. Now it is :)

In summary do the following frist

sudo fdisk -l (determine your logical partition)

then

sudo grub-install /dev/(location to the main HD logical partition)

Sheers!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .