Please enter CoinGecko Free Api Key to get this plugin works.

Partner links

Dual-boot Fedora 25, Windows 10 on a computer with UEFI firmware

Fedora 25 GRUB menu

Fedora 25 is the latest edition of the Linux distribution published by the Fedora Project, which is sponsored by Red Hat, Inc. The Fedora Project supports many desktop environments, including Cinnamon, GNOME 3, KDE, LXDE, MATE and Xfce, but the main edition uses the GNOME 3 desktop environment in its default configuration.

The other desktop environments are made available via what are called Spins. All spins, including the main edition, use the same installation program called Anaconda.

This tutorial shows how to install any of the Spins and the main edition alongside Windows 10 on a computer with UEFI firmware and on a single hard drive.

First Step – Get Your Windows 10 Computer Ready

1. To complete this tutorial successfully, it is recommended that you disable Secure Boot. How this is done depends on your computer, but if you have the same Lenovo laptop I used for this tutorial, see How to disable Secure Boot on a Lenovo G50 laptop. On an HP 250 G5 laptop, see this guide.

2. From the BIOS or UEFI setup utility, configure the computer to boot from external media.

3. After that, you need to free up disk space from your computer by shrinking the C drive or other partition with enough free space on it. Getting that done is fairly simple by using the Windows 10 partition manager. When completed, the partition manager should show partitions and a free disk space similar to the one in Figure 1.

Windows 10 C drive

Figure 1: Free space recovered from Windows 10 C drive

From that free disk space, we’ll create the following three partitions for installing Fedora 25: A root partition mounted at /; a partition for users’ home directories mounted at /home; and a swap partition – disk space that the system may use as virtual memory. Anaconda has support for disk encryption, but if you intend to configure it for your installation, I’ll recommend that you skip it. That because it did not work when I tried it. A bug appears to cause the configuration to fail when attempting to encrypt a system with an EFI System Partition (ESP).

Create a Bootable USB Stick of Fedora 25

The next step in this operation is to download an installation image of Fedora 25 – the main edition, which is available for download from here or any of the Spins, which are available for download from here. For this tutorial, I used an installation image of the KDE Spin.

After the download has completed, you may now use it to create a bootable USB stick. To accomplish that on Windows 10, use this article as a guide. On any Linux distribution, the simplest method is to use the following command:

# This command assumes that you're executing it from your Download directory
# If you're using the same edition as used here, you may just copy and paste. 
# Otherwise, change the edition of Fedora 25 to match the one you downloaded
# /dev/sdb is the target USB stick. Yours might not be sdb, so verify before copying and pasting

sudo dd if=Fedora-KDE-Live-x86_64-25-1.3.iso of=/dev/sdb bs=1M conv=sync


In the next step, you’ll use that bootable USB stick to install your favorite desktop flavor of Fedora 25 alongside Windows 10 on the same hard drive.

Dual-boot Fedora 25 With Windows 10

If you’ve not done so already, insert the bootable USB stick you created in the previous section into a free USB port and (re)boot the computer. If the computer has been set up properly, you should see a menu just like the one shown in Figure 2. If necessary, select the Test this media… entry. Otherwise, stick with the default (Start Fedora-…).

Fedora 25 install boot menu

Figure 2: Booting Fedora 25 installation disk

Whatever option you choose, it should eventually boot into a Live desktop of the Fedora 25 image. Then click on the icon of the installer on the desktop to launch it. The first step of the installation process should correctly detect your language. Click to proceed to the step shown in Figure 3.

This is the Anaconda Hub, From here, you navigate to the Spokes. If your computer is connected to the Internet or to your local network, the timezone (under Time & Date) should be auto-configured. Same with the network address. To customize the hostname, you’ll have to click on Network & Hostname. The most important task you need to complete here, is to select the target hard drive. To accomplish that, click on Installation Destination.

Fedora 25 Anaconda installer

Figure 3: Hub of Anaconda, the Fedora 25 installer

That should take you to the Installation Destination spoke. The detected hard drives, including the installation USB stick, will be listed. In Figure 4, the target hard drive is shown to have 232 GB of free disk space. That free space will be used for installing Fedora 25.

Fedora 25 Anaconda hard drive

Figure 4: View of hard drives detected by Anaconda, the Fedora 25 installer

Select the target hard drive, then select the I will configure partitioning option. Click Done.

Fedora 25 Anaconda target hard drive

Figure 5: Selecting target hard drive for installing Fedora 25

You’re not done yet, so you’ll be taken to the step shown in Figure 6, where you’ll manually create partitions from the free space. Note that the existing Windows 10 partitions, including the EFI System Partition (ESP), are listed under Unknown. The ESP is also listed under New Fedora 25 Installation. That indicates that you don’t have to recreate it. The installer will (re)use it for installing GRUB.

Now you just have to start creating the other partitions, so click on the + button to open the installer’s partition editor.

Fedora 25 Anaconda disk partitions

Figure 6: List of partitions detected by Anaconda on the target hard drive

The first partition we’ll create will be the root partition, so select the appropriate mount point and a suitable size and click Add mount point. Depending on the desktop environment you’re trying to install, a default installation of Fedora 25 takes no more than 5 GB, so any amount of disk space that’s at least twice that will do.

Fedora 25 Anaconda create root partition

Figure 7: Creating the root partition for installing Fedora 25

This is where you configure the newly created partition. By default, all Fedora 25 partitions are created using an LVM partitioning scheme. LVM, the Linux Logical Volume Manager, is great, but if you’re installing on a laptop or other computer that will never use more than one hard drive, you don’t need it. I used a laptop for this test installation, so made the decision to create Standard partitions. That meant selecting Standard Partition from Device Type.

Fedora 25 Anaconda root partition

Figure 8: Configuring the root partition for installing Fedora 25

The next partition will be mounted at /home and should ideally be allocated a major chunk of the available disk space. When completed, click Add mount point. Note that in this image, Desired Capacity is 100,000 (MB), or 100 GB.

Fedora 25 Anaconda create home partition

Figure 9: Creating the home partition for installing Fedora 25

Then configure it like you did the previous partition.

Fedora 25 Anaconda home partition

Figure 10: Configuring the home partition for installing Fedora 25

The Mount Point for the last partition is swap, and the Desired Capacity should be between 2000 MB – 4000 MB, or 2 GB – 4 GB. Add mount point.

Fedora 25 Anaconda create swap partition

Figure 11: Creating the swap partition for installing Fedora 25

Then give it the same treatment like you did the other two partitions.

Fedora 25 Anaconda swap partition

Figure 12: Configuring the swap partition for installing Fedora 25

To apply all the changes you made at this step, click Done.

Fedora 25 dual-boot partitions

Figure 13: Completed partitions for installing Fedora 25 alongside Windows 10

This is just a confirmatory step, so click Accept Changes.

Fedora 25 verify partitions

Figure 14: Summary of tasks to be completed by Anaconda for installing Fedora 25 alongside Windows 10

If there are no warning icons at the hub, Begin Installation.

Fedora 25 dual-boot

Figure 15: Ready to install Fedora 25 alongside Windows 10

After installation has completed successfully, restarting the computer should cause it to boot into your new Fedora 25 desktop, but not before making a stop at the GRUB boot manager’s menu, which from now on will be the default boot manager, unless you modify it from the BIOS/UEFI setup utility.

Boot into the new Fedora 25 desktop, then restart and boot into Windows 10. If you’re able to boot into both operating systems, congratulation! Enjoy your new dual boot system featuring Fedora 25 and Windows 10.

Fedora 25 GRUB menu

Figure 16: GRUB boot menu showing entries for Fedora 25 and Windows 10



Partner links

Newsletter: Subscribe for updates

Notify of
Inline Feedbacks
View all comments
James Tate
James Tate
6 years ago

I have two hard drives sda /fedora, sdb/Windows10 and the /boot/efi partition is on the sdb/windows10 drive
how can I show fedora where the/boot/efi is ?

Would a command mkconfig -o grub solve the problem ?

But, I’m not sure how to type out the mkconfig -o command.

Flavio Melo
Flavio Melo
6 years ago

Hi I did the installation, but after access windows 10, the menu to chose fedora stop showing at boot. What can I do to get the dual boot menu again?

7 years ago

When I click on done I get this error which says for a uefi install you must includw an EFI system partition on a gpt-formatted disk , mounted at /boot/efi

Reply to  finid
7 years ago

Same thing here, the EFI partition from Windows is visible only in “Unknown” dropdown menu, in the “New Fedora 25 Installation” there are no partitions shown at all its blank and when i add a root partition there click done it show this message as above ” for a uefi install you must includw an EFI system partition on a gpt-formatted disk , mounted at /boot/efi “. There is a EFI partition but its only in Windows/Unknown part in the installer

7 years ago

Hi, firstly, thank you a lot for this tutorial, it worked really well at first. Unfortunately, after one day the performances of Windows 10 dropped drastically. Booting time has become 5 times higher and also working performances are very slow (opening a very light pdf file takes more than a minute). What can it be? Is there anything I can do? Thank you a lot in advance 🙂

7 years ago

I have a question, I followed all the steps and created a 32 gigabytes partition using the Windows disk management utility, but when I booted from the live usb containing the Fedora image and tried to install it alongside my Windows 10 system the SSD was showing all its capacity as free, so I didn’t proceed cause I wouldn’t want to wipe my entire SSD and loose Windows and all my files.
Do any of you know why this happened? My laptop is the ASUS Zenbook UX305CA

7 years ago

i have a real question that i seethat actually no1 do ask it,why the hell i need 2 partitions ? 1 for root and 1 for home ? i see it pointless and more time for linux to work by lookin always for links to another place,why not just make 1 partition as root and that is all ?,do i need to make 100 partitions to have all the /something on another 1 ? what will be the point for that ? just to have lots and lots of partitions ?

7 years ago

You need to update grub immediately after installation od fedora25. Downloaded gub fails booting win7, win7 boot just shows a blinking curser in the left upper corner of your screen.

You need to run a “sudo dnf update grub* -y” after the fedora installation.

Hugo Napoli
7 years ago

Good evening. I don’t agree. If you trust in the security provided with Linux, you never should virtualize a Linux System over any Windows platform. That’s the esence in dual boot, to isolate completely the system, not using it like a program inside another system.

Greg P
Greg P
7 years ago

It’s of some academic interest to know you can do this, but dual-booting is in my mind outmoded. More sensible is to either set up a Windows VM on Linux or Linux VM on Windows. Rather than choosing Windows OR Linux, you have Windows AND Linux.

Get the latest

On social media

Security distros

Linux distros for hacking and pentesting

Crypto mining OS

Distros for mining bitcoin and other cryptocurrencies

Crypto hardware

MSI GeForce GTX 1070
Installing Nvidia GTX 1070 GPU drivers on Ubuntu

Disk guide

Beginner's guide to disks & disk partitions in Linux

Bash guide

Bash shell terminal
How to set the PATH variable in Bash
Hya, what do you think? Please comment.x