[Solved] Dual Boot with Windows 10 Legacy : one SSD for each OS

Hello,

I have two SSD : /sdc with Windows 10 in Legacy mode, and /sdb with Manjaro installed. (/sda is a 2Tb HDD without OS on it). Here's my problem: it always boots directly on Windows 10.

At worst, I would like to be able to manually boot on /sdb, and for exemple, if I want to reboot on Windows, manually change the boot device to /sdc going through BIOS on each reboot.
At best, always booting on /sdb and having GRUB leaving me the choice of which SSD I want to boot.

Here's some informations and some things did :

  • My Windows 10 uses legacy BIOS (msinfo32 displays BIOS mode : Legacy, bcdedit command displays \WINDOWS\system32\winload.exe for the Windows Boot Loader's path. )
  • My BIOS is set on "UEFI + Legacy mode" (only other option is UEFI).
  • I've disabled fast boot and secure boot.
  • I made my bootable USB key with Rufus 3.10 on Windows 10 with the default settings (Partition scheme : MBR ; Target system : Bios or UEFI).
  • I booted on the USB Key without UEFI (meaning in the bios with UEFI + Legacy mode, I had the choice between like USB key or UEFI USB KEY. Picked without UEFI.
  • With Manjaro Architect, I tried one install with Automatic Paritioning (BIOS & UEFI), and tried one other install using cfdisk (BIOS only). I installed GRUB on a special small partition (512mb) for boot (like you do in EFI mode ?)
  • I tried booting directly on /sdb, even by completely disabling all other devices in the BIOS devices list, and it always boot on Windows 10 (/sdc)
  • I ultimately physically unplugged my SSD /sdc, and I get a Windows BSOD telling me it can't boot on the OS. Still no boot on /sdb.

I'm running out of ideas and I'm getting tired of spending every evening on this. :sleepy:. There's probably something I must have missed, I'm not really goot at this. So I'm asking for your help, don't hesitate to ask other important informations I may have missed!

Thanks a lot!

Edit : I simply gave up and reinstalled Windows 10 in UEFI mode.

For being able to use Manjaro's Grub to boot both Windows and Manjaro, the two systems need to be installed in the same mode. In this case Legacy/Bios/MBR since your Windows is installed in this mode.

The bootloader for a Legacy install need to be installed in the MBR of the disk and not in a particular partition if you have a disk with msdos partition table.

To have some idea of your disk setup, boot up your Manjaro live usb, open a terminal and run the following command:

sudo parted -l
(that is lowecase L)

In the live session, connect to internet, login to forum, copy the terminal output as text, paste it in your reply, highlight it and click </> button to format.

Alright, I'll do that tonight asap. Thanks for your help. I keep you posted :slight_smile:

1 Like

Hello again,

As a reminder : /sda is a 2Tb HDD without OS, /sdb is where Manjaro is installed, /sdc is Windows 10, and /sdd the USB key.

So here's the output of sudo parted -l

[manjaro@manjaro-architect ~]$ sudo parted -l
Model: ATA ST2000DM001-9YN1 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type    File system Flags
1       1049kB  2000GB  2000GB  primary ntfs        boot

Error: end of file while reading /dev/sdb
Retry/Ignore/Cancel? Ignore
Error: The primary GPT table is corrupt, but the backup appears ok, so that will be used
OK/Cancel? Ok
Model: ATA WDC WDS120G2G0A- (scsi)
Disk /dev/sdb: 120GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name Flags
1       1049kB  538MB   537MB   fat32
2       538MB   4833MB  4295MB  linux-swap(v1)
3       4833MB  120GB   115GB   ext4

Model: ATA Samsung SSD 850 (scsi)
Disk /dev/sdc: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type    File system Flags
1       1049kB  250GB   250GB   primary ntfs
2       250GB   250GB   556MB   primary ntfs        msftres

Model: SMI USB DISK (scsi)
Disk /dev/sdd: 8053MB
Sector size (logical/physical): 512B/512B
Parition Table: msdos
Disk Flags:

Number  Start   End     Size    Type    File system Flags
2       754MB   758MB   4194kB  primary             esp

It seems that my primary GPT table is corrupt, I guess it's a big part of the problem. It's not my first try tho, was it corrupt on each attempts?

Also I realized that /sdb has

Partition Table: gpt

I suppose that's the problem. But I formated the key as bootable key using MBR for partition scheme, and during the installation I used cfdisk(BIOS). Did I miss something?

As a bonus, here's the output of list volume using DISKPART on Windows, dunno if it can be useful haha.


DISKPART> list volume

  N° volume   Ltr  Label          Fs     Type        Size   Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     Z   BiG DD       NTFS   Partition   1863 G   Healthy       System
  Volume 1     C                NTFS   Partition    232 G   Healthy       Boot

(Z: is /sda, C: is /sdc ).

Again thanks for your time.

Since Windows is already installed in Legacy mode, perhaps the easiest way to make a functioning dualboot with the possibility to choose which OS to boot up from Grub's boot menu would be to reinstall Manjaro in Legacy/Bios/MBR mode.

  1. Disable the UEFI mode in the firmware settings
  2. Boot up your live usb (should boot in Legacy now)
  3. Create a new partition table on your disk: msdos
  4. Install Manjaro: choose the MBR of the disk as the location for installation of the bootloader (not a particualr partition)
  5. When done, reboot your machine and bring up Bios' one time boot menu and choose manjaro to boot into
  6. In Manjaro run sudo update-grub. This shoud create a boot entry for Windows in Grub's boot menu.
1 Like

Thanks for your help and sorry for the late answer. I tried every possible way to install it and it always booted directly on Windows. I eventually reinstalled Windows 10 in UEFI then Manjaro and it worked perfectly. I should have done this much earlier.

1 Like

Forum kindly sponsored by