0

I am trying to get Windows 8 to appear under my Grub menu.

  • CPU: Intel 4790k
  • MB: Asus Hero VII UEFI Bios
  • GPU: EVA 970GTX
  • SSD 250G 850 Samsung Evo
  • SSD 120G 850 Samsumg Evo

I have Windows installed on /dev/sda and Ubuntu 14.0.4.02 on /dev/sdb.

Ubuntu was also setup with an EFI boot partition.

I ran boot-repair with the EFI boot partition enabled and Ubuntu as the default OS.

  • Did you run sudo update-grub? – TheWanderer Apr 23 '15 at 13:12
  • Yes I did try that. It only recognised the Ubuntu entries – Elliot Apr 23 '15 at 13:24
  • The OS prober complains, that the Windows partition cannot be mounted, because it's still in use. This may prevent it from recognising the Windows installation. Please refer to Unable to mount Windows (NTFS) filesystem due to hibernation to solve this issue and re-run update-grub. – David Foerster Apr 23 '15 at 13:25
  • Windows is in hibernation mode. That's your problem. If you are able to browse your EFI partition with the BIOS boot menu, go into EFI>Microsoft>Boot and boot from bootmgfw.efi to shut it down. – TheWanderer Apr 23 '15 at 13:26
  • I managed to make a little progress but it still doesn't appear in my grub. I removed fastboot from windows and booted back into ubuntu and updated grub and no change. I decided to try another repair boot and seems like it was successful, but still no Windows appears in my grub? paste.ubuntu.com/10871441 – Elliot Apr 23 '15 at 13:50
1

You've got two disks:

  • /dev/sda is an MBR disk that holds Windows and has the Windows BIOS boot loader in the MBR.
  • /dev/sdb is a GPT disk with an EFI System Partition (ESP). The ESP holds both GRUB and the Windows EFI boot loader, and the MBR holds the first-stage GRUB BIOS boot loader.

Note that you've got both BIOS and EFI boot loaders for both Windows and Linux, so it's unclear how either of your OSes is booting -- in BIOS mode or in EFI mode. Given that Windows is installed to an MBR disk, my hunch is it was installed (and should boot) in BIOS mode; but it's conceivable it's booting in EFI mode, since you seem to have a Windows EFI boot loader in your ESP, even though it's on the other disk. (OTOH, those files may have been placed there by Boot Repair, which sometimes "hijacks" those names for copies of GRUB.) Both your Boot Repair and your Boot Info Script outputs include efibootmgr runs, which indicates that they were run from an EFI-mode boot; but it looks like they may have been run from a live CD, so that's not necessarily diagnostic of how your regular installation boots. Your grub.cfg file has some EFI-specific features, which also suggests an EFI-mode installation of Ubuntu, but that could be misleading.

Untangling this setup is possible but would be quite tricky. There is a potential shortcut, though:

  1. Download the USB flash drive or CD-R version of my rEFInd boot manager.
  2. Prepare a boot medium from the files you download.
  3. Boot to the rEFInd medium. Its menu should appear, showing options for both Ubuntu and Windows. Note that the point of using rEFInd up to here (and in the next couple of steps) is to ensure that Ubuntu boots in EFI mode and not in BIOS/CSM/legacy mode.
  4. Test the boot options. I expect that at least one Ubuntu option will boot normally, but Windows is up in the air. (The option might start and then hang or present an error message.)
  5. If rEFInd can boot Ubuntu normally, and especially if it can also boot Windows, install the rEFInd PPA or Debian package in Ubuntu.
  6. Reboot with the rEFInd USB drive or CD-R removed. rEFInd should come up, booted off your hard disk.
  7. Boot to Ubuntu from rEFInd.
  8. If rEFInd did not boot Windows, edit the /boot/efi/EFI/refind/refind.conf file: Uncomment the scanfor line and ensure that hdbios is among the options. This action activates rEFInd's support to switch from EFI-mode booting to BIOS-mode booting. The idea is to get rEFInd to show you an option to boot Windows in BIOS/CSM/legacy mode.
  9. When you reboot, you should see a new gray diamond-shaped option with a hard disk badge. With any luck, this will boot Windows (in BIOS/CSM/legacy mode).
  10. If the new BIOS/CSM/legacy option does not boot Windows, uncomment the uefi_deep_legacy_scan option from refind.conf and try again.

Note that you can delay installing rEFInd to your hard disk and edit the EFI/refind/refind.conf file on the USB flash drive if you want to test rEFInd's ability to boot Windows in BIOS/CSM/legacy mode. You might do this if you want to be sure rEFInd can boot both OSes before installing it.

The end result is that you'll boot Ubuntu in EFI mode and Windows in either EFI mode or BIOS mode, whichever was used for its installation. You may have extra boot options on rEFInd's menu, but you can trim those by further edits to refind.conf. In particular, you'd use dont_scan_files, dont_scan_dirs, or dont_scan_volumes. You can also delete pointless boot files, such as if the "Windows" boot files (/boot/efi/EFI/Microsoft/Boot/*.efi) are copies of GRUB created by Boot Repair.

  • Brilliant I will have to try this when I get home. Also, as the Ubuntu install is fresh I can always remove and reinstall Ubuntu with a different partition setup, but I'm not sure if that will help? – Elliot Apr 23 '15 at 21:26
  • Re-installing Ubuntu might help, but it will do so only by chance or if you understand how Windows is booting (in BIOS mode vs. in EFI mode). If two OSes' boot modes don't match, dual-booting becomes more difficult, so understanding your first OS's boot mode is important when installing the second. – Rod Smith Apr 23 '15 at 21:47
  • Brilliant. Thanks! One last thing, as a last resort I could just completely start again and format both drives. Are there any guides or instructions you recommend for starting from scratch for this particular setup (Windows 8, Ubuntu 14.04, seperate drives, UEFI bios)? – Elliot Apr 24 '15 at 5:45
0

I managed to figure this one out however I had to reinstall both Windows 8.1 and Ubuntu 14.04. I had to ensure that both operating systems were installed on UEFI by disabling CSM and booting from UEFI mode.

I also followed this guide:

http://www.linuxbsdos.com/2014/05/31/dual-boot-ubuntu-14-04-windows-7-on-a-pc-with-2-hdds-and-uefi-firmware/

Thank you so much for everyone's help, especially @Rod Smith for clearing up my bootloader situation.

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.