Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I probably did something really stupid. My primary hard drive on my laptop was getting full so I decided to install Ubuntu 12.10 on an external hard drive.

When I have the hard drive plugged in, I am first presented with the Grub screen where I have to option to boot in Ubuntu or Windows. Everything works fine with the external drive plugged in but when I try to boot without it, I get a grub rescue screen and can't do anything.

I believe my problem is that the computer first looks for the Grub menu and can't find it. It then freezes up and is unusable.

Is there any way to get past this problem so I don't have to carry my external drive around all the time?

share

1 Answer 1

The problem is that GRUB depends on some configuration files that are stored in the Ubuntu partition, and since your Ubuntu is in the external drive, it works only when you have that one plugged in.

There are multiple solutions to this problem:

Personally, I recommend solution number 1. Some other people may differ.

  1. Insert a Windows CD and boot into a Recovery Console and run fixmbr, this will restore windows boot-loader on your internal HDD.

    In order to boot Ubuntu from your external drive, you select the external drive in the BIOS boot order (or boot menu) as boot option (assuming that the external drive has grub installed, which it should, if it doesn't, you may need to reinstall GRUB on your external drive (not on your internal one) or just reinstall Ubuntu into your USB HDD again, and make sure to select the external drive the device to install grub to).

  2. Make a new partition on your internal drive, and make it the /boot partition, which will contain all the configuration files needed for GRUB to boot.

    This partition will mainly have all files contained in your /boot folder under your Ubuntu partition. You may also need to reinstall GRUB in order to tell GRUB to find the GRUB files in the new partition. You may also need to mount this new partition to /boot in Ubuntu.

  3. Install Ubuntu alongside Windows in your main HDD, this will reinstall GRUB and everything will work, but you wont have Ubuntu in your external drive.

  4. If you have any other Linux partition inside your internal drive, you may reinstall GRUB and make this other Linux partition the one containing the GRUB files.

share
    
+1 on the first option, I would also recommend that in the bios that the external(USB) drive is the first in the boot order that way if the drive is attached it will boot into Ubuntu by default but if there is no external drive it will boot from the Windows(internal) hard disk without any user intervention. –  TrailRider Nov 7 '12 at 2:12

This site is currently not accepting new answers.

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