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 |
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. 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.
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.