0

So recently I've gotten my hands onto a decent enough hard drive that can run Ubuntu good enough and installed it. It was a Toshiba 1TB USB 3.0, though I don't know the model.

I installed Linux on the Toshiba hard drive. Using the "Something Else" install option, I gave it 2GB (2048mb) of Swap storage and 128GB (131072mb) for the main OS, and after installation, I created a partition out of the rest of the storage on it in Windows 10 for storage that both OSes can read. My windows 10 is installed on my Internal SSD, typical.

So here's my problem: I can't install Ubuntu on my PC without it overwriting the default Windows 10 bootloader. This is a problem for a couple of reasons. One thing is that I can't boot into either OS I have without the Hand Drive plugged in. If I try to, it'll say something about the ubuntu install not being present and readable, and it enters GRUB recovery mode which I have no knowledge of.

Another reason is that last time I installed Ubuntu, it was a disaster. I made a partition on my hard drive for Ubuntu, and dual booted it. I thought that the GRUB bootloader was normal at the time and nothing to do with the install, even though it's sorta Ubuntu styled, I left it. Then something happened, I suspect it to do with Windows Update, I suddenly couldn't boot to it. I had to get a hard drive, even when inspecting it with one of my friends who has lots of knowledge on Windows (and nothing with Linux). So I decided to not partition anything and install Ubuntu onto a seperate hard drive. Then, I did as mentioned above before describing my problem. And this is to do with the Bootloader, though I still don't want to do anything with partitioning my Internal SSD, which again, has nothing but Windows.

So anyways, I have Windows Update installed, disabled all Windows Services and Tasks that auto updates anything, and I'm careful whenever updating ANYTHING, even my video games.

And before you say that I should just use some application that installed some other Windows Bootloader, I tried, but the outcome wasn't anything that I could live with. I used the only application I know of, but it didn't work. The only bootloader that I could install was the Windows 7 one, since that was the latest. I had no problem with the Windows 7 bootloader, but the Ubuntu wouldn't boot. When I tried selecting my Toshiba as my temporary boot device, it just went back to the menu to select a temporary boot device almost immediately.

I need some way to get rid of the GRUB Bootloader while being able to boot to my Toshiba Ubuntu Hard Drive. Thanks, SwagMasterIV

P.S. I use a ThinkPad T540p laptop, if that info is any useful.

  • What mode (UEFI or legacy) is W10 installed in? What boot preference have you set on your t540(legacy first or UEFI first)? Installing grub to an external hdd in legacy mode should not have overwritten anything on the SDD (UEFI install will add the Ubuntu bootloaders, but not overwrite the Windows bootloaders to the hard disk -- You have to copy the SDD's EFI to the HDD's EFI partition) – ubfan1 Jun 12 '16 at 5:04
  • What do you mean "UEFI or legacy?" – SwagMasterIV Jun 12 '16 at 6:12
  • UEFI wiki.archlinux.org/index.php/… ESP/efi - Efi System Partition en.wikipedia.org/wiki/EFI_System_partition BIOS - Basic Input/Output System en.wikipedia.org/wiki/BIOS CSM - UEFI Compatibility Support Module (CSM), which emulates a BIOS mode, only available with secure boot off. – oldfred Jun 12 '16 at 15:59
1

The usual way used to install to an external drive is to put grub on that drive too, and change the boot-order in BIOS to boot the (USB) drive before the internal hard disk. That way, nothing needs to be written to the internal hard disk, and without the external drive, the internal (Windows) boot happens. legacy allows only one bootloader, which is started from the Master Boot Block, and yes, on one disk, the Windows bootloader will be overwritten. But on a two disk system, this should not happen if you specify the location for the bootloader as the external disk (but you might have run the install with the location pointing to the internal disk). Since you can run Ubuntu, install grub to the external disk now (before you replace grub on the internal disk with the Windows bootloader).

There are lots of answers on how to replace the Windows bootloader -- if you have the Windows install media (and not the vendor recovery junk). Without that, it is possible if you have a FAT partition on the internal disk to just install the grub files there. You make a directory "boot" and give grub-install that as the --boot-directory. You have show that grub can boot your windows so that should be enough.

UEFI on newer machines (and my Thinkpad W520 allows a choice in the BIOS, so I assume your T540 does too) allows for multiple bootloaders. Wonderful, nothing should get overwritten, but the Ubuntu install ignores the bootloader location and just puts the ubuntu bootloaders on the internal disk's EFI partition, alongside the Windows bootloaders. Oh well, you need an EFI partiton on the external disk, copy the internal disk's EFI files, then since the external disk is "removable", there is a default bootloader which is used and probably isn't set up right, so just copy the files in /EFI/ubuntu to /EFI/Boot and rename the shimx64.efi to bootx64.efi. The other thing might be a change of the internal boot paths, but that can be reset with efibootmgr, and you might not even be using UEFI anyway.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.