2

System

A new Acer Predator laptop that came with Windows 10 installed. It includes two hard drives. One is a ssd where windows 10 is installed and the other is a hdd. UEFI secure boot is enabled by default. RAID was also enabled for the hdd by default.

Goal

I am having trouble getting a multi-boot setup on a new laptop. I would like this to work in one of two ways (with Ubuntu install(s) on the HDD):

  1. Multi-boot options at startup that allow me to choose between the currently installed Windows system or the Ubuntu system(s).
  2. Use BIOS to change boot order between the Windows Boot Manager and the HDD. If booting using the Windows Boot Manager, it would boot directly to windows 10. If booting using the HDD, it would show me a grub menu with my various Ubuntu installs to choose from on the HDD.

Setup

I have already split the HDD into four partitions. I did this from within Windows. Originally, I was attempting to use VirtualBox to run virtual machines from these partitions, so I would like to keep the most important one intact until this is working, if possible. (i.e. only create a new partition table and blow away the existing partitions if it's the only way to get what I'm after). I also changed the HDD from RAID to AHCI so that I could see it in the boot order options.

What I've tried

The first thing I tried was just installing Ubuntu on one of the partitions of the HDD. I told it to look in /dev/sdb for the boot loader. With UEFI enabled, I go into Windows 10 even if I have the SSD higher in the boot order. Without UEFI enabled (legacy mode), it says no operating systems are found.

I then attempted to switch one of the existing partitions to be /boot. Same end result.

UEFI Secure Boot

I have seen comments and posts about 'disabling' UEFI secure boot, but I am unable to do that. I can switch to legacy mode, but using UEFI without secure boot eludes me. I have tried following a few guides on how to do it in Windows 10, but none of them have worked.

I'm also very unsure of how much of the problem is Secure Boot and how much is UEFI.

Also, there is an option in the boot order that is only there when using UEFI (Windows Boot Manager). This seems to be the only thing that I can get the system to recognize when booting.

Help?

The previous times that I've set up multi-boot systems, it was either completely from scratch (machines I built myself with no pre-installed OS) or 'it just worked' (in the case of my 4-year old MacBook). To the best of my knowledge, I've never had to wrangle with UEFI and I have no idea what the 'Windows Boot Manager' is.

9
  • Windows devices that support Secure Boot must be able to disable Secure Boot. Its a requirement by Microsoft to put Windows on it
    – Ramhound
    Jul 10, 2016 at 4:58
  • From MSDN: 'For logo-certified PCs, Secure Boot is required to be configured so that it cannot be disabled.' I don't know whether my computer is 'logo-certified' or not, but this implies that the ability to disable it is not a strict requirement. Reference: msdn.microsoft.com/en-us/windows/hardware/commercialize/…
    – toadjamb
    Jul 10, 2016 at 6:34
  • There is also a 'security' tab in the BIOS that has some options regarding UEFI and I can't get to any of them. They are all disabled. Again, I'm not sure how much of my problem is actually related to UEFI, either. I would be more than happy to forget about UEFI on /dev/sda and just turn it off when I want to boot using /dev/sdb for Ubuntu, but doing that doesn't show me the OS on the /dev/sdb(n) partition.
    – toadjamb
    Jul 10, 2016 at 6:42
  • 1
    IIRC Ubuntu has a "signed" grub so it should work with Secure Boot enabled. Just make sure your Ubuntu installation medium is UEFI-bootable and you booted it and installed Ubuntu in UEFI mode but not legacy mode. Mixing legacy Ubuntu and UEFI Windows means that you'll either need to rely on capable boot manager like rEFInd, or the boot menu of your UEFI to switch between the OSes, since grub cannot switch across the different boot modes, not to mention that it needs a "EF02" partition on a BIOS/GPT setup.
    – Tom Yan
    Jul 10, 2016 at 16:14
  • @toadjamb - The requirement you linked to only applies to Windows RT 8.x devices.. Windows 8.x+ OEM devices must have the capability for secure boot to be disabled.
    – Ramhound
    Jul 10, 2016 at 17:16

1 Answer 1

3

I finally got everything to work after days of fighting with windows, efi, and secure boot.

For posterity, here is what I did. This install is on a second internal hdd.

  1. Install Ubuntu in the desired location, using the windows efi partition as the boot partition for the new Ubuntu install.
  2. Use efibootmgr from Ubuntu (this can be done from a LiveCD) to move ubuntu ahead of the Windows Boot Manager in the boot order.
  3. Log in to Windows and run bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. (check this path on your machine to make sure that's where the grub efi file is)
  4. Go into BIOS (or EFI manager or whatever it is) and add the grubx64.efi as a trusted efi file. NOTE: I had to set a BIOS password to be granted access to efi secure boot settings.

This has been working for a few days now and persists regardless of the last OS I have logged in to. It was even working with a second Ubuntu install.

Each of these steps is obviously simplified. You should have no problem searching the internet to get help with each individual step. My problem was that I didn't know what I needed to do. I'm not sure the order matters for steps 2-4, although it's probably easiest to do step 2 before you exit the installation (if you use the 'try ubuntu' option and start the install from there).

Many thanks to those who helped me with this. I would have been at my wit's end without someone at least asking some questions to keep me trying.

You must log in to answer this question.

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