[wiki] Windows 10 - Manjaro - Dual-boot - Step by Step

Dual boot - Step by Step

The tutorial originated from the issue Dual Boot Win 10 EFI and has evolved with detailed instructions to prepare your Windows installation to co-exist with Manjaro.

Target systems UEFI

Computers with preinstalled Windows (Windows 10) is computers using UEFI firmware. This guide is a generic guide targeted at UEFI installations.

However some of the guide does apply even if you are using a BIOS/MBR setup.

DO NOT install UEFI system to BIOS partition scheme.

This guide is not official by any means and it is not the ultimate guide. It has grown from experience gathered in my local Linux community and from different posts across the Manjaro community.

To ensure a successful dual-boot installation using Windows and Manjaro there are a few steps to be taken.

Firmware

The firmware is a crucial part of your system as it controls aspects on how the Linux kernel will interact with your the hardware.

  • Ensure you are using manufacturers latest firmware
  • Check that the firmware uses AHCI to access your disk device(s).
  • Intal Optane probably don't work.

Some options needs to be disabled in your systems firmware

  • Legacy boot
  • Compatibility Mode (CSM)
  • Secure Boot
  • Fast Boot (USB stick might not be recognized at boot)

Access to Windows partition

Do you plan on doing read/write on your Windows partition?

Disable Windows options like

  • Fast Startup
  • Hybrid Sleep

Windows Hybrid Sleep defaults to enabled on desktop computers and disabled for laptop computers.

Why should I do that? When Windows uses the above options it leaves the file system in a dirty state. When the file system is in this state the Linux filesystem tool ntfs-3g mounts the file system read-only, effectively blocking you from making changes to your files on the Windows partition.

To disable Windows Fast Startup you need to access the Windows Control Panel.

You find it by clicking on Windows Start button → type control → select Control Panel desktop app.

In the Control Panel app

  1. Click on System and Security
  2. Click on Power Options
  3. Click on Choose what power buttons do
    a. Click on Change settings that are currently unavailable
    b. Uncheck the option Turn on fast startup
  4. Click on Save Changes

If for any reason you want to turn off hibernation completely

  • Open command prompt as Administrator
  • Input powercfg /h off and press Enter

Windows system

If you are like most users, your system came with Windows and your system has since been upgraded to Windows 10 (which leaves the old system behind).

Major version upgrades - like 1804 - also leaves the old system behind and therefore a tremendous amount of dead data on your system that needs to be cleaned.

So cleanup your Windows system before doing a Manjaro installation.

  1. Open Windows Explorer File manager and select My Computer.
  2. Right click on you local drive C:Properties
  3. Click on Disk Cleanup button → wait
  4. Click on the Cleanup Systemfiles → wait
  5. check all items in the list (including the old Windows installation) → OK
  6. Wait → wait until finished.
  7. Close all windows

Backup your documents

You can skip this but it is not recommended.
Backup any data you might want to keep to an external location of any kind.

Partition cleanup

If you have experimented a lot and/or had a failed installation and/or you have a messy partition scheme you will have to manually delete those extra partitions with the Windows Disk Manager tool. Be careful that you do not delete partitions required by Windows or by an OEM recovery tool.

Disk partitioning

A lot of people rely on the installer to do the job. It's OK - it works - for the most part.

The best course of action to make room for a secondary Linux installation is to let Windows resize the partition instead of the installer. Why that? Because Windows knows where the files are. When you let the installer shrink the Windows partition you cannot know if the installer accidentally deletes data belonging to the Windows system.

  1. So boot into Windows.
  2. Rightclick on Start → select Disk Manager
  3. In Disk Manager - rightclick on your Windows drive C: → select Shrink partition
  4. A reasonable size to release - depending on available space - would be 32768-65536 MiB (32-64GiB) or more.
  5. When you are ready click Shrink

When you are done you are ready for the Manjaro installation.

Manjaro Installation

Some of the choices presented here can be argued and the following two points I would like to address beforehand.

Auto partitioning vs Manual partitioning

Some will argue that one should select the auto partition in the Disk preparation section of the installer but

The approach described here ensures no messing with the Windows EFI partition and therefore no problems with Windows removing the Manjaro bootloader.

What theoreticly - in a Window-Linux dual-boot scenario - can cause issue with two $esp on same drive is when you decide to remove the Windows part and merge the partition with your root partiton. That would be impossible because you cannot move your second $esp without breaking your boot.

But that is a theoretical issue - as Linux does not care how the data is organized - only humans do.

Should the day come - you decide to remove your Windows partition - it is a trivial task to create an empty folder and mount the newly aquired storage in that folder.

Separate root and /home

Separation of the system root and the home folder is not required but another benefit of using manual partitioning.

The separation of your personal data from the system - using a designated partition for the system's home folder makes it a bit easier to maintain your system. It is no secure replacement for a backup strategy it is just a handy solution should you decide to reinstall your system.

One pitfall here is making the root partition too small - using the recommended minimum size requires you to do regular system maintenanceto avoid the system disk running full and thus making your system very hard to boot.

Depending on your available disk space your system root could be from 20-64GiB. The remaing is assigned to your personal data.

Swap size

Setting a swap partition is the better choice because a little swap is - in most cases - better than none.

The chosen size depends on your system, available RAM and disk type. Use the suggested size of 2 GiB or research and adjust accordingly to system, taste and need.

Let's get to it

Now that you have partition sizes defined let start

  1. Reboot your computer to the live USB media.
  2. Launch the graphical installer
  3. Follow the guide until you reach the Disk selection/preparation
  4. Select Manual partitioning (last option) → Next.
  5. Select the correct disk selected - should be easy to see.
  6. EFI PARTITION
    Select the unpartitioned space → Create
    a. Size → input 512
    b. Filesystem → select FAT32
    c. Mountpoint → select /boot/efi
    d. Flags → check boot and espOK
  7. SWAP PARTITION
    Select the unpartitioned space → Create
    a. Size → input 2048
    b. Filesystem → select linuxswap
    c. Flags → check swapOK
  8. ROOT PARTITION
    Select the unpartitioned space → Create
    a. Size → input 2048000 (min. recommended size)
    b. Filesystem → select ext4
    c. Mountpoint → select / (root) → OK
  9. HOME PARTITION
    Select the unpartitioned space → Create
    a. Size → Use remaining
    b. Filesystem → select ext4
    c. Mountpoint → select /homeOK
  10. Next
  11. Continue with the guide and when finished do not reboot.
  12. Open a terminal
  13. Input efibootmgrEnter
  14. Verify the BootOrder - you should have a manjaro entry and the corresponding number should be first in the BootOrder

Before you reboot

Oh No - It boots directly to Windows - What do I do?

Just boot to Windows.

If that not do the trick then @gohlip has a goldmine of tips to get grub bootloader right.

Corrections to the wiki

If you discover an error, due to me not being of the native English tongue or it should be an error in the instructions - please ping me. Thank you :slight_smile:

38 Likes
UEFI Boot Dual Boot Issues
[SOLVED] Trying to Install Manjaro with Windows on the same drive
Installing Windows 10 alongside Manjaro
Manual Partitioning - boot, esp flag
How to access windows drive as read-write from manjaro gnome
Efibootmgr does not show manjaro after install (dual boot uefi)
Unable to Dual Boot Windows 10/Manjaro
Install on Secondary Drive Partition With Windows
Partitions not working
How to - Switch from legacy to UEFI?
Why is my /boot/efi partition empty?
Dual-Boot & encrypted /root but non-encrypted /boot/efi: GRUB still asking for password
[SOLVED] Problem in removing dual-boot
Windows 10 EFI Dual Boot: Boot directly to windows
Improving the Manjaro installer for dual-booting with Windows 10 and UEFI
Installing windows alongide my Manajaro installation
X1 extreme i5, so far I could not get bumblebee to work
[SOLVED] Grub issues with GUID partition table warnings in dual boot setup
Dual boot with Windows 10 + Manjaro doesn't show up a grub menu
Ethernet doesn't work on fresh install
Former Sometime Ubuntu/Mint User Ready for Manjaro
Windows Function Update wont work UEFI Patition with GRUB
Can not boot Manjaro after kernel update
How do I boot into Manjaro Mate?
Want to remove Windows and do a fresh install
Can't wake with keyboard
Reinstalling Manjaro to fix boot issues
Win10 and Manjaro on different disks - boot problem
Installation with disk encryption, can't boot
Help with dual booting with windows 10
Which Manjaro version should I use?
Manjaro long installation time
Rights on second disk
Question about dual-booting
Error during boot
Dual system installation after Windows 10
Instalation stopped at 10%
Dual boot windows 10 / manjaro 18
Installing manjaro in a place of ubuntu
Bspwm install won't go live
Partition "in use" trouble prevents dual-boot install on new laptop
Manjaro grub kernel panic
Backup, Install, Reinstall, Dual Boot...OH BOY
Manjaro bootet nach der Installation nicht
Manjaro bootet nach der Installation nicht
[TOC] Manjaro Installation
Manjaro on SSD?
Opensuse GRUB Bootloader problem with Manjaro
[SOLVED] Problems with boot
Windows Manjaro common file area
Dual booting problems
Cannot install Manjaro Gnome Dualboot [SOLVED]
Triple boot with existing (windows 10 + Ubuntu) dual boot
Manjaro/Grub disappearing at random from dual-boot UEFI system?
Why dont i have write access to my mounted windows drive?
GRUB not loading after new installation
Can't manage to boot on grub even with tutorials
Multiple EFI partitions after dual booting
I can't install manjaro xfce alongside my windows
Surface Pro 4 Win10 + Manjaro on uSD
Surface Pro 4 Win10 + Manjaro on uSD
Surface Pro 4 Win10 + Manjaro on uSD
need help setting up Dual-Boot on separate hard drives
Strange problem accessing NTFS folders
Tried to install Manjaro now I can't get into anything.
Issues with grub and efibootmgr while dual booting

Thanks for the write up, I’m sure this’ll be linked to many a time.

1 Like

Awesome tutorial @linux-aarhus. I hope you don’t mind, I did a minor grammar and spelling revision. I did not change your directions in any way. Just a minor cosmetic polishing. I hope you are not offended.

3 Likes

What if you select the left disk? :rofl:
Maybe you better set to “correct disk” instead?
I would have corrected myself, but I am too cautious on editing others’ wikis nowadays… :zipper_mouth_face:

1 Like

Thank you for your editorial suggestions.

I am Danish and English is my second language.

Though it has been in use since 4. grade (my 11. year) and now, at my 59. year, it is not getting near perfect.

So thank you for your contribution. :smile:

5 Likes

Is it on purpose that it is suggested to create a second/seperate ESP for manjaro ?

Yes it is.

I do a lot of support in our local community - mostly Ubuntu - and I have noted that a lot of issues strive from the fact that Windows thinks their $esp is theirs.

I have explained why beforehand

The cost of the extra $esp is minimal compared to the benefits.

The benefit is - you don’t mess with your Windows partition. Manjaro creates a pointer to the Windows Bootloader and under no circumstances are your Windows boot entry nor your Manjaro boot entry going to dissappear in an update.

You can of course use the existing bootloader - but you are asking for all kind of troubles.

1 Like

Mk - I was guessing it might have something to do with windoze shredding the bootloader or something, but wasnt sure.

OP has edited in first post to include my link in section [Oh No - It boots directly to Windows]
Appreciate the inclusion. However, instead of booting up after installation to find it boots only to windows, we can, after Manjaro installation, and still at livecd OS find out if there could be any problem.

The following is done at livecd terminal, after installation is completed and applies only to UEFI installation.

efibootmgr

Is there an entry for manjaro and at top of the bootorder? [1]
If none, continue with the following commands.
Lets say the root partition (no separate boot to keep it simple here) is sda5 and the $esp is sda2

sudo mount /dev/sda5 /mnt
sudo mount /dev/sda2 /mnt/boot/efi
sudo cp /mnt/boot/grub/x86_64-efi/core.efi /mnt/boot/efi/EFI/boot/bootx64.efi
sudo efibootmgr -c -d /dev/sda -p 2 -L "manjaro" -l "\EFI\Manjaro\grubx64.efi"

Verify again with “efibootmgr” that ‘manjaro’ is now listed and at top of bootorder.

Good luck.

[1] - It is still possible to have the manjaro entry listed and still boot to Windows. In that case, see the link and it is possible that the computer make and model has some difficult setup. See the [Some diificult UEFI setup] in the link to fix it.

3 Likes

Thank you!

I have modified the post to include ^^^^ - it is valuable information and I really appreciate your knowledge in this specific area.

Once again my thanks to you!

2 Likes

I guess this was a typo?
Should be

sudo mount /dev/sda2 /mnt/boot/efi

?

1 Like

Yes. Thanks. Corrected above.
Cheers.

Frede, your English skills, including grammar, have greatly improved over the past couple years. It speaks highly of your motivation. If only more of us had your enthusiasm! :+1:

3 Likes

I would also like to suggest PLOP for computers that do not support live USB booting. I have tested it out on Windows XP/7 and it works just fine. Just run the BAT file and it will do its thing.

22 posts were split to a new topic: Dual boot tutorial - a question

This guide is very good, the idea of separate EFI is a nice solution for preventing possible bootloaders’ wars. However, some things should be taken into account:

  1. The second ESP partition may become visible in Windows, and this is obviously not a good thing, so one might need to hide it with unassigning the drive letter in Windows’ Disks utility.
  2. This is something really important. In case of user’s decision to make a reinstall of Windows such user should not delete its ESP. Otherwise Windows fill find Manjaro’s one during the installation and make use of it.
1 Like

Stupid question: I am installing Manjaro on a new laptop with Win10 installed on it. Wanted to keep the Win10 install since the SSD is large enough. Following the guide I realize that the current installer does not automatically create extended partitions. So if I follow the guide as it is, I end up with 5 partitions (Windows EFI, Windows NTFS, Manjaro EFI, Manjaro EXT4 root, Manjaro Swap) which is more primary partitions than possible. Is it me doing something wrong or the guide is slightly imprecise here? Didn’t use Windows for over 10 years and therefore always used the Legacy mode in UEFI machines, so I’m kind of a newbie here. :slight_smile:

That is a limitation of MBR partition schema.

But on a new Win10 laptop this should not pose a problem as Windows 10 uses GPT partitioning.

If you are using Legacy boot or CSM as it is also called the partition schema will be MBR as this (probably - no knowledge) will be what the Windows installer will choose.

Booting the system without CSM - pure UEFI - should make the Windows installer choose GPT.

Well, the installer reports it to be a problem. It is a Thinkpad X250, so it is 4 years old (it’s just new for me since I bought it recently :smiley:). Any idea how I should adapt the guide to work with the MBR partition table? Thanks!

Never tried - but as MBR has a limitation of four on primary partitions you need to keep the partition count below four.

You should not need to create an EFI partition.

Using a swapfile instead of a swap partition will further decrease the needed partitions.