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.
-
31Before you mark any question as duplicate, please make sure you get the difference in the the new question This question was never a duplicate. It focuses on Two different drives and not Two partitions drives. A problem that people with modern machines are likely to experience. @DavidFoerster I recommend you remove the duplicate flag and show possible solutions kindly. – Geek Guy Nov 06 '19 at 08:04
-
@GeekGuy: The solutions are the same though, regardless of whether the two partitions end up on the same or a different physical drive. All that changes are the block device node names which already vary a lot depending on the specific set-up anyway. – David Foerster Nov 07 '19 at 09:12
-
More generally, if we have two question “How do I do X under condition C1?” and “How do I do X under condition C2?” and the answer to both is “Perform steps S1, S2, S3… while adjusting parameters P1, P2… based on environment conditions E1, E2….” – note that neither C1 nor C2 influence the answer – then, we should flag one question as a duplicate of the other. – David Foerster Nov 07 '19 at 09:18
-
@GeekGuy , Suppose in later stage we decided to take out the Windows hard disk to another PC. then what are the steps to do to work this two independently ? – Arun Mar 16 '21 at 16:30
3 Answers
This should work for most systems that use UEFI and which have two HDD.
Update: Be careful with newer Windows systems like Windows 10/11 which may depend on a single UEFI bootloader partition to work properly, see 1 and 2
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
Set to "UEFI mode only" (no legacy/CSM).
Disable "secure boot"
Disable "Intel Rapid Start" (if equipped)
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
Select your target drive (in my case /dev/sdc)
Select "Make New Partition Table"
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
Select "free space" under your target drive (in my case /dev/sdc)
Select "+"
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
Select "free space" under your target drive (in my case /dev/sdc)
Select "+"
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
Select "free space" under your target drive (in my case /dev/sdc)
Select "+"
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.
Boot into Linux
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.

- 3
- 2

- 1,431
- 1
- 9
- 3
-
1thanks pal, I didn't know which efi partition select for boot loader for my new distro KDE neon, thanks – christianbueno.1 Jul 09 '17 at 15:45
-
4This is the cleanest explanation on the internet. Thank you, you truly deserved your upvote. – starikcetin Feb 08 '18 at 15:26
-
3Fantastic walk-through, thanks! Also worth a mention that Ubuntu maintains time in UTC and Windows in local so you'll need to change one or the other to have them in sync. – David Kuhta Mar 11 '18 at 22:22
-
2I can't see the efi partition under boot loader installation, what am I doing wrong? – Jack May 09 '18 at 12:01
-
3Does it make sense to disable secure and fast boot options with WIndows 10 and Ubuntu 18.04? Aren't all technologies are compatible nowadays? – 0leg Jan 10 '19 at 15:12
-
1Simply superb. Seconding that this is the cleanest answer on the word wide web! – John Doe Feb 01 '19 at 22:45
-
I installed Ubuntu on a secondary HDD but installled the bootloader in the old HDD EFI partition (disk windows is on). Grub still presents me with a boot menu where I can select OS and everything seems to be working correctly. What is the downside to what I have done? – Mike Vella Feb 20 '19 at 11:41
-
Can’t create more than 4 primary so is it ok to make swap logical at least? – ggnoredo Feb 21 '19 at 14:52
-
Thanks, it was really helpful. Just one note - for my laptop (Lenovo Thinkpad t450) I had an additional option under
UEFI only
-CSM support
. First I set it toOff
, but it led to having "Lenovo" boot logo instead of "Thinkpad" logo and also Grub menu was not showing up (however Ubuntu was booting fine). When I turned this option back on then I was able to see Grub menu and everything became fine! – The Godfather Dec 01 '19 at 17:31 -
It looks like a swap file is now preferred instead of swap partition (except when using hibernation) - thoughts? https://askubuntu.com/questions/1181720/partition-in-the-ubuntu-19-10 – Ross Mar 26 '20 at 01:43
-
An easier way to get boot options (without looking up your manufacturer's special key'). Go to (From Win10) Settings>Update>Recovery>Advanced Startup. Then Use a Device>The USB. – TheAlphaReturns Feb 26 '21 at 21:30
-
@user613363 I successfully followed these steps. (Thanks!) A year on, I want to replace the Windows10 disk (clone to SSD) while keeping the Linux disk as is. Do I need to update the boot loader? Can you provide any hints as to how? – manybodycpa May 25 '21 at 13:30
same environment as mine :) just download iso image and put it into your bootable DVD/USB. Set the partition and install,
then set the first boot device to linux installed HDD at the BIOS/UEFI. Otherwise, you can only boot with Win10

- 21
-
So, I'm still going to need a USB or CD then, I can't treat the hdd as a USB? – TechnicallyLive Jan 29 '16 at 05:48
-
That depends on which version of Ubuntu you are going to install. As far as I remember, 12.04 certainly support Windows installation, 14.10 not pretty sure, but 15.10 does not support the installation from Windows. – kkangshawn Jan 29 '16 at 05:51
-
1I recommend [edit]ing this answer to expand it with specific details about how to do this. (See also How do I write a good answer? for general advice about what sorts of answers are considered most valuable on AskUbuntu.) – David Foerster Feb 23 '17 at 18:22
-
Nah, when I set linux as first boot device it just loads linux without dual boot screen. – Artem P Apr 03 '20 at 18:45
I currently have Ubuntu 15.10 on one partition and CentOS 7 on a separate partition of the same 1TB HDD (as well as swap partitons.) On a separate SSD I have Windows 10.
Here is what I'd suggest:
-Install Windows 10 on your HDD/SSD (if not done already)
-Make a bootable USB/CD of Ubuntu
-Boot USB/CD
-Select 'other' for install portion
-Create 30GB '/' partition of type ext4
-Create 8GB of type swap *
-Create x-amount GB (whatever space is left) for '/home' of type ext4 **
-Install grub2 on drive that has Windows master boot record.
After finishing up the install you will reboot and see grub2 and be able to choose which OS to boot into.
*assuming you have 8GB ram
**alternatively you can make one large / partition instead of a separate /home partition if you prefer.

- 109