Windows 10 and Linux love-hate dual boot problems

image source: http://www.webupd8.org/2014/09/dual-boot-fix-time-differences-between.html

Intro

tl;dr;, jump to the Problem 😊

I’ve bought myself a nice new computer Lenovo Flex 5. And was really happy with its performance under Windows. However, I am a developer and thus I need my computer to be fully flexible to my development needs. As much as I would love to have everything on Windows, normally I develop on Linux because it is much much easier to setup the environment. Virtual machine was out of the question because it affects the performance. (I will make a benchmark of it one day, but not today) Only sensible choice left — dual boot with shared storage drive.

There are quite a few good tutorials online how to make a Linux 16.04 LTS dual boot along Windows 10 so I am not going to repeat their steps here. But if you also have this computer, these tutorials will not be enough.

http://www.askaswiss.com/2017/01/how-to-install-ubuntu-16-04-alongside-windows-10-dual-boot.html

http://dailylinuxuser.com/2016/05/how-to-dual-boot-ubuntu-and-windows-10.html

Brief Device Information:

Model: Lenovo Flex 5 1570
Type: 80XB
CPU: Intel i7500, dual core, 2.7 GHz
GPU: Nvidia GeForce 940MX
BIOS: 4QCN36WWV1.06
RAM: 16 GB
Storage: 256 GB SSD + 1 TB HDD
Preinstalled OS: Windows 10 Home, 64 bit

It is not hard to make a dual boot on this computer if you know what you are supposed to do. Since I lost a whole day figuring this out, and I was not the only one who encountered this problem (https://forums.lenovo.com/t5/Linux-Discussion/Flex-5-Linux-Support/td-p/3704110), I would like to add a few steps needed before starting any of the above-mentioned tutorials.

My Problem

I disabled both Fast Startup and Secure Boot in the BIOS and created a bootable USB with Linux Ubuntu 16.04.03 LTS using Rufus. However, Boot Type was greyed out and stuck on UEFI, whereas it was supposed to be changed to Legacy Boot.

When I tried running the installer, I got a warning there are no EFI compatible USB drives and was redirected to use Linpus lite USB drive. Once I was in the Linux installation tutorial, the only thing it recognized as a storage unit was the very USB drive it was being installed from. Hence, when I got to Installation types window, all I got was a blank window, just like this guy here (https://askubuntu.com/questions/802152/installation-type-empty-on-16-04-for-a-dual-boot).

When I followed the answer from the link saying I should switch from Intel RST SATA to AHCI, Windows was unable to boot again — and I was stuck in desperation.

Solution

The main problem was enabling AHCI mode after Windows 10 installation. Solution found here (https://www.tenforums.com/drivers-hardware/15006-attn-ssd-owners-enabling-ahci-mode-after-windows-10-installation.html):

  1. Run Command Prompt as Admin
  2. Invoke a Safe Mode boot with the command: bcdedit /set{current} minimal
  3. Restart the PC and enter your BIOS during bootup using F2 while booting (I didn’t have to use the function key together with F2).
  4. Change from Intel RST to AHCI mode then Save & Exit.
  5. Windows 10 will launch in Safe Mode.
  6. Right click the Window icon and select to run the Command Prompt in Admin mode from among the various options.
  7. Cancel Safe Mode booting with the command: bcdedit /deletevalue {current} safeboot
  8. Restart your PC once more and this time it will boot up normally but with AHCI mode activated.
  9. Bask in the reflected glory of being a total Windows 10 God — love this sentence

After you have followed Toobad’s great advice, go to BIOS again, while having the live USB plugged in:

  1. Change Boot Type to Legacy Boot.
    Options to do anything with safe boot or fast startup were no longer available so I didn’t need that.
  2. Move USB drive as a primary boot device
  3. Save and exit BIOS
  4. Install Ubuntu using any of the tutorials.

After the successful installation, my computer was automatically booting Windows, ignoring Linux. If that happens to you too — go to BIOS and make Linux primary boot device. It knows where Windows boot manager is and will automatically show GRUB screen on boot, where you can select which OS you want to run.

VOILA! I hope this will people avoid the desperate situation I got myself in 😊

If there is a way to get this set up without having to switch from to AHCI, I would love to know about it!