Ubuntu – Dual Boot Windows 10 and Linux Ubuntu on Separate Hard Drives

disk-managementdual-bootwindows

How would I go about dual booting Windows 10 and Ubuntu, the windows drive is on an ssd as my c drive and my s drive is a hdd that I want to use for Linux. I have no idea what I need to download it or anything.

Best Answer

  • This should work for most systems that use UEFI and which have two HDD.

    Specification used for the tutorial below:

    Dell Inspiron E5440:

    • Main HDD - 256GB Samsung SSD (Windows 10 installed)

    • Secondary HDD - 64GB Transcend mSATA SSD (Mint 18 was installed to this drive)


    A) UEFI/BIOS

    1. Set to "UEFI mode only" (no legacy/CSM).

    2. Disable "secure boot"

    3. Disable "Intel Rapid Start" (if equipped)

    4. Disable "fast boot" in UEFI (note this is different than the "fastboot" setting in Windows 8/10). The options in your UEFI/BIOS might say something like Full/Minimal/Automatic for boot mode. Select Full (or thorough, or complete, etc whatever your UEFI vendor has chosen to call it).

    B) Advanced Power Options (Fastboot)

    Disable fastboot in Windows 8/10 under "advanced power options". Restart computer to ensure that this subsequent boot and the next reboot/shutdown will be in "normal" mode.

    Optional:

    Install Macrium Reflect (free) and create a backup image and reinstallation media should something go wrong with Windows 10.

    C) Rufus / Bootable USB stick

    Use Rufus to create a bootable USB stick with your choice of Ubuntu based distro. Make sure in Rufus that you CHOOSE the option UEFI/GPT only. This ensures the Linux environment boots only into UEFI mode during your install.

    D) Boot Menu

    Reboot your computer and press key for one time boot menu (Dell is typically F12). Select your USB stick from the boot options.

    Note:

    Make sure it says UEFI in front of the USB stick in the boot menu.

    If not, return to Windows and recreate your USB stick with Rufus ensuring you choose the UEFI/GPT (only) option.

    E) Boot into USB Stick

    Boot into Linux live environment and begin install.

    F) Installation type

    When you get to the installation option, choose "Something else" at the bottom of the Ubiquity installer.

    G) Create partitions

    Find your secondary HDD that you will be installing Linux to.

    In my case it was listed as /dev/sdc (with /dev/sda being the windows drive and /dev/sdb the USB drive [which was invisible in the installer]).

    So basically:

    +--------------+--------+---------------------------+--------------------------------+
    | Device path  | Device | Operating System (OS)     | Visible in Ubiquity installer? |
    +--------------+--------+---------------------------+--------------------------------+
    | /dev/sda     |  HDD   | Windows 10                | yes                            |
    | /dev/sdb     |  USB   | Ubuntu 16.04 (Live Stick) | no                             |
    | /dev/sdc     |  HDD   | None                      | yes                            |
    +--------------+--------+---------------------------+--------------------------------+
    
    • 1st Partition / EFI

      1. Select your target drive (in my case /dev/sdc)

      2. Select "Make New Partition Table"

      3. Partition the target drive as follows:

      • Size: 650 MB

      • Type for the new partition: Primary

      • Location for the new partition: Beginning of this space

      • Use as: EFI (this will be listed as /dev/sdc1 efi in the partitioning tool once you create it)

    • 2nd Partition / Root

      1. Select "free space" under your target drive (in my case /dev/sdc)

      2. Select "+"

      3. Partition the target drive as follows:

      • Size: min. 10 GB (20+GB better)

      • Type for the new partition: Primary

      • Location for the new partition: Beginning of this space

      • Use as: ext4

      • Mount point: Choose "/"

    • 3rd Partition / Swap

      1. Select "free space" under your target drive (in my case /dev/sdc)

      2. Select "+"

      3. Partition the target drive as follows:

      • Size: min. 2 GB (20+GB better)

      • Type for the new partition: Primary

      • Location for the new partition: Beginning of this space

      • Use as: swap (if you wish to use hibernation, the swap needs to be just slightly larger than your total amount of RAM - example I have 8 GB so the size of this parition was set at 9000 MB)

    • 4th Partition / Home

      1. Select "free space" under your target drive (in my case /dev/sdc)

      2. Select "+"

      3. Partition the target drive as follows:

      • Size: remainder of space on drive

      • Type for the new partition: Primary

      • Location for the new partition: Beginning of this space

      • Use as: ext4

      • Mount point: Choose "/home"

    H) Boot loader Device

    • BEFORE clicking "Install Now", from the "device for boot loader installation" option button, select the 650MB EFI partition you just created as the target for the bootloader. (example /dev/sdc1 in my case).
    • Click "Install Now".

    I) Installation & Reboot

    • Finish installation process and reboot (removing the USB stick when your UEFI/BIOS screen logo appears).

    J) Upon reboot

    After UEFI/BIOS reads the new bootloader entry that Linux has added to it, you will be presented with the grub menu with a listing of your Linux distro as well as a listing to boot Windows 10.

    1. Boot into Linux

    2. Install any updates and then reboot and attempt to enter Windows 10 from the grub menu to make sure that grub correctly handles the hand-off to the Windows 10 bootloader.


    What you have done:

    You have installed the Linux EFI bootloader to the newly created EFI partition. In the process of this, Linux has added an entry to your UEFI listings in your systems UEFI/BIOS. Linux has also automatically detected your Windows 10 install and added a grub menu item to boot it. Your computer at this point will now automatically boot to Linux unless you choose to boot to Windows (from the Grub menu).

    What you have not done:

    You have not in any way altered your Windows 10 install or its bootloader or even so much as touched the Windows 10 EFI partition. Everything is reversible simply by removing the Linux UEFI listing from your UEFI/BIOS settings. How to do so varies from each vendor.

  • Related Question