[CentOS] Dual boot C7 with Window 10

Thu Apr 21 22:31:45 UTC 2016
Chris Murphy <lists at colorremedies.com>

On Tue, Apr 19, 2016 at 5:42 AM, Jerry Geis <geisj at pagestation.com> wrote:
> I have a laptop with windows 10.
> I went into the Windows disk manager and shrunk the volume
> to make room for C7. That worked.
>
> I also changed the BIOS from secure boot to "both" (secure/legacy)

Both is a problem. There's no practical way for an installer to
support both. Basically it makes the computer UEFI for Windows and
BIOS for CentOS 7 instead of UEFI for both.

>
> I installed C7, went fine. About the time it was done I realized I never
> saw anything about "other" boot options (seems I saw that in the past).
>
> Anyway sure enough, got done and C7 boots fine - no option there for
> Windows.  I did searching and found I needed to add to the
> /etc/grub.d/40_custom the following:
> menuentry "Windows 10" {
>     set root='(hd0,1)'
>     chainloader +1
> }
>
> then re-run the grub2-mkconfig -o /boot/grub2/grub.cfg
>
> I then rebooted and sure enough I got the menu item for "Windows 10"
> however when I select it it does not boot.
>
> How do I get Windows 10 to boot again ?

You'll have to use the firmware's boot manager. The legacy mode
enables a compatibility support module (CSM) so that UEFI presents a
faux-BIOS to the operating system, Cent OS in this case. So Cent OS
thinks it's on a BIOS system, and installs a BIOS based bootloader. A
BIOS bootloader cannot chainload a UEFI bootloader.

What you should revert back to UEFI only, with Secure Boot enabled,
and reinstall CentOS, deleting the previous partition/mount points
including the BIOS Boot partition that was created for CentOS's
bootloader.

The gotcha is that with Secure Boot enabled, the CentOS GRUB-efi
package doesn't support chainloading the Windows bootloader. This is
getting fixed in Fedora 24 but I have no idea how long it'll take to
get to CentOS 7. You could either disable Secure Boot (which I don't
recommend) or you switch between CentOS and Windows using the
firmware's boot manager. You'll have to figure out which F key brings
up the boot manager. On my Intel NUC it's F10, *shrug*.

-- 
Chris Murphy