I have Windows 7 installed in my internal HDD and wanted to try out Ubuntu so I have an USB to put Ubuntu LiveUSB on and installed Ubuntu on a external HDD and everything worked out fine.
Now the problem. If I remove the external HDD and try to boot Windows normally it shows the grub rescue screen. The only way to boot into Windows is by having the external HDD attached.
Is there any way I can make it so I won't have to have the external HDD attached to be able to boot my Windows 7?
Best Answer
When you installed Ubuntu, it placed the Grub bootloader on your internal drive MBR, but all the grub modules are stored on your Ubuntu partition, on the external drive. Grub won't let you do much if it cannot load the modules, so, without the external plugged in you cannot boot anything.
What you should have done is to leave the Windows bootloader on the internal drive, and installed Grub to the external. Then whenever you plug in the external, just override at startup to boot from the external.
To install Grub to the external MBR (assuming it's
/dev/sdb
):To get Windows booting without the external, reinstall the Windows bootloader. To do this boot from a Windows 7 repair CD or the Windows Installation DVD to a repair prompt and run:
You can make a Windows Repair CD from Windows if you don't have one. It's also possible to install a Windows-like bootloader from your Ubuntu install:
Note that
lilo
will popup a large warning screen, but it's safe to ignore it as this refers to when it's used to boot linux.This is what it looks like to use
lilo
(note the command is case-sensitive):You'll see a warning that looks like this - it can be ignored when you use
lilo
as a windows-style bootloader: