Configure DualBoot with Windows on Pop!_OS

Hello everyone,

Pop!_OS uses systemd-boot as the boot loader instead of GRUB. Many of you ask us how to do a DualBoot with Windows, so we are going to leave a series of steps so that you can perform the process where we will configure systemd-boot and get to show the two operating systems during boot.

Once Windows and Pop!_OS are installed, we enter the BIOS and in the boot priorities of our hard disk, we select Linux as the first option, and then Windows.

The following steps have to be performed in Pop!_OS :

STEP 1 - Increase the boot wait time for systemd-boot.

sudo nano /boot/efi/loader/loader.conf

Add the following line and save the file. This will make the systemd-boot boot loader wait for 10 seconds before automatically booting into Pop!_OS.

timeout 10
entries 1

**You can add more seconds or less according to what you need in the timeout line**.

STEP 2 - Install the ‘os-prober’ utility which will automatically fetch all the installed operating systems in the machine

sudo apt update
sudo apt install os-prober -y

Run the 'os-prober' command and it will show you the windows boot manager entry.

sudo os-prober

 

As we can see, Windows boot manager is in /dev/nvme0n1p4 partition.

STEP 3 - Mount /dev/nvme0n1p4 partition into /mnt/ mount point

sudo mount /dev/nvme0n1p4 /mnt/

Once the partition is mounted, we are going to list the relationship files with the Windows manager.

ls -l /mnt/EFI


STEP 4 - Copy the /mnt/EFI/Microsoft directory to /boot/efi/EFI

sudo cp -ax /mnt/EFI/Microsoft /boot/efi/EFI

STEP 5 - Reboot the machine.
This time you will see systemd-boot boot options similar to the GRUB boot loader. You can either choose windows boot manager to boot into windows or boot into Pop!_OS by selecting the first option.

If you are not choosing any option, the boot loader will wait for 10 seconds as configured in STEP 1 and automatically boot into Pop!_OS.





Configure DualBoot with Windows on Pop!_OS
Eusebio Giner Slimbook
22 August, 2023
share
archive