After setting up dual boot, Windows won't load unless I boot into Linux first and then reboot.

After finding that I was unable to do everything I needed in Linux I wiped everything and set up a dual boot. I have Windows installed on an ssd (sdb), Manjaro (KDE Plasma 5.18.5 on kernel 5.6.15-1-Manjaro) installed on an nvme drive (nvme0n1) and a third data drive (sda). I used the following guide to set up dual boot: [HowTo] Dual-boot Manjaro - Windows 10 - Step by Step including disabling fast startup and hybrid sleep.

When I enter GRUB and select Windows, if I haven't booted up Linux immediately prior, it just gets stuck on the spinning circle with the windows logo. I then have to hard reset, boot into Linux then restart into Windows again (where it works fine). The only way for me to boot into Windows cleanly is to switch the machine on, boot into Linux, restart, then select Windows.

I set the data (sda) drive up as a universal storage drive between Windows and Linux so it is set as a single NTFS partition. Initially this drive didn't automatically mount in Linux so I modified the fstab config file with the following:

#storage mount
UUID=F2CE9013CE8FCE73 /mnt/data ntfs-3g auto,exec,rw 0 0

Now this drive automatically mounts and I have set the documents, pictures, music etc paths as default to this drive for both Windows and Linux to share.

Both installations are UEFI.

I only include this information because I wonder if windows has an issue until Linux mounts one of the drives. Seems unlikely, but I'm struggling to think of many reasons why it does this. I've done two clean installs of both Windows and Linux and the same issue persists. Sorry if I've left a jumble of information cluttered across this post, I was just trying to include everything that could be pertinent.

Thanks,

Daniel

I once had a spinning circle in Win 10 because it couldn't connect to the internet, or so I believed. Maybe Windows has some issues with network hardware not starting correctly at cold boot?

There is no - at least no apparent - reason why this should happen.

While I am no longer dual-booting Windows (VBox Windows suffice) I have made exercise numerous times and I have yet to see your issue.

I only have one suggestion

  • boot to Manjaro
  • open a virtual terminal
  • run these commands
    sudo os-prober
    sudo grub-mkconfig -o /boot/grub/grub.cfg
    

Something which may enlighten us is your partition layout

sudo fdisk -l

Copy the text from the terminal - paste it - before pressing reply - select it again - then click the </> button in the post toolbar - nicely formatted and readable.

In addition to what @linux-aarhus mentioned, please post output of

inxi -Fxxxza --no-host

and show us your complete /etc/fstab file.

Thanks for the quick responses.

sudo os-prober

/dev/sdb2@/efi/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi

sudo grub-mkconfig -o /boot/grub/grub.cfg:

Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-5.6-x86_64
Found initrd image: /boot/amd-ucode.img /boot/initramfs-5.6-x86_64.img
Found initrd fallback image: /boot/initramfs-5.6-x86_64-fallback.img
Found Windows Boot Manager on /dev/sdb2@/efi/Microsoft/Boot/bootmgfw.efi
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
done

sudo fdisk -l

Disk /dev/nvme0n1: 465.78 GiB, 500107862016 bytes, 976773168 sectors
Disk model: WDC WDS500G2B0C-00PXH0                  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 8CD191E2-1802-674B-AEA0-1731F6E29E78

Device            Start       End   Sectors   Size Type
/dev/nvme0n1p1     2048   1050623   1048576   512M Microsoft basic data
/dev/nvme0n1p2  1050624  34605055  33554432    16G Linux swap
/dev/nvme0n1p3 34605056  97519615  62914560    30G Linux filesystem
/dev/nvme0n1p4 97519616 976768031 879248416 419.3G Linux filesystem


Disk /dev/sda: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: ST1000DM010-2EP1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: BBE668AD-2FD7-4118-A68F-8C6D940170D8

Device          Start        End    Sectors   Size Type
/dev/sda1        2048 1743808511 1743806464 831.5G Microsoft basic data
/dev/sda2  1743808512 1953523711  209715200   100G Linux filesystem

inxi -Fxxxza --no-host

Disk /dev/sdb: 465.78 GiB, 500107862016 bytes, 976773168 sectors
Disk model: CT500MX500SSD1  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 6AE24484-4023-42F4-8F4F-00D78D6E764E

Device       Start       End   Sectors   Size Type
/dev/sdb1     2048   1085439   1083392   529M Windows recovery environment
/dev/sdb2  1085440   1290239    204800   100M EFI System
/dev/sdb3  1290240   1323007     32768    16M Microsoft reserved
/dev/sdb4  1323008 976773119 975450112 465.1G Microsoft basic data


System:    Kernel: 5.6.15-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.1.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.6-x86_64 root=UUID=a98da364-c311-48aa-8422-bffc63af3949 rw quiet 
           resume=UUID=a07822fc-e645-46ed-b464-f7fe2a93ad9c udev.log_priority=3 
           Desktop: KDE Plasma 5.18.5 tk: Qt 5.14.2 wm: kwin_x11 dm: SDDM Distro: Manjaro Linux 
Machine:   Type: Desktop System: Micro-Star product: MS-7A34 v: 1.0 serial: <filter> 
           Mobo: Micro-Star model: B350 TOMAHAWK (MS-7A34) v: 1.0 serial: <filter> UEFI: American Megatrends v: 1.OR 
           date: 11/29/2019 
CPU:       Topology: 6-Core model: AMD Ryzen 5 1600 bits: 64 type: MT MCP arch: Zen family: 17 (23) model-id: 1 stepping: 1 
           microcode: 8001138 L2 cache: 3072 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 76821 
           Speed: 1384 MHz min/max: 1550/3200 MHz boost: enabled Core speeds (MHz): 1: 2333 2: 1271 3: 1381 4: 1378 5: 1270 
           6: 1377 7: 1380 8: 1377 9: 1820 10: 1270 11: 1269 12: 1377 
           Vulnerabilities: Type: itlb_multihit status: Not affected 
           Type: l1tf status: Not affected 
           Type: mds status: Not affected 
           Type: meltdown status: Not affected 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: disabled, RSB filling 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: NVIDIA GP106 [GeForce GTX 1060 6GB] vendor: ASUSTeK driver: nvidia v: 440.82 bus ID: 26:00.0 
           chip ID: 10de:1c03 
           Display: x11 server: X.Org 1.20.8 driver: nvidia compositor: kwin_x11 resolution: 1920x1080~60Hz, 1920x1080~60Hz 
           OpenGL: renderer: GeForce GTX 1060 6GB/PCIe/SSE2 v: 4.6.0 NVIDIA 440.82 direct render: Yes 
Audio:     Device-1: NVIDIA GP106 High Definition Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel bus ID: 26:00.1 
           chip ID: 10de:10f1 
           Device-2: Advanced Micro Devices [AMD] Family 17h HD Audio vendor: Micro-Star MSI driver: snd_hda_intel v: kernel 
           bus ID: 28:00.3 chip ID: 1022:1457 
           Device-3: C-Media USB PnP Audio Device type: USB driver: hid-generic,snd-usb-audio,usbhid bus ID: 1-4:3 
           chip ID: 0d8c:0136 
           Sound Server: ALSA v: k5.6.15-1-MANJARO 
Network:   Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Micro-Star MSI driver: r8169 v: kernel 
           port: f000 bus ID: 23:00.0 chip ID: 10ec:8168 
           IF: enp35s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    Local Storage: total: 1.82 TiB used: 205.57 GiB (11.0%) 
           ID-1: /dev/nvme0n1 vendor: Western Digital model: WDS500G2B0C-00PXH0 size: 465.76 GiB block size: physical: 512 B 
           logical: 512 B speed: 31.6 Gb/s lanes: 4 serial: <filter> rev: 211070WD scheme: GPT 
           ID-2: /dev/sda vendor: Seagate model: ST1000DM010-2EP102 size: 931.51 GiB block size: physical: 4096 B 
           logical: 512 B speed: 6.0 Gb/s rotation: 7200 rpm serial: <filter> rev: CC43 scheme: GPT 
           ID-3: /dev/sdb vendor: Crucial model: CT500MX500SSD1 size: 465.76 GiB block size: physical: 512 B logical: 512 B 
           speed: 6.0 Gb/s serial: <filter> rev: 010 scheme: GPT 
Partition: ID-1: / raw size: 30.00 GiB size: 29.40 GiB (98.01%) used: 10.51 GiB (35.7%) fs: ext4 dev: /dev/nvme0n1p3 
           ID-2: /home raw size: 419.26 GiB size: 411.68 GiB (98.19%) used: 2.90 GiB (0.7%) fs: ext4 dev: /dev/nvme0n1p4 
           ID-3: swap-1 size: 16.00 GiB used: 0 KiB (0.0%) fs: swap swappiness: 60 (default) cache pressure: 100 (default) 
           dev: /dev/nvme0n1p2 
Sensors:   System Temperatures: cpu: 33.0 C mobo: N/A gpu: nvidia temp: 30 C 
           Fan Speeds (RPM): N/A gpu: nvidia fan: 33% 
Info:      Processes: 307 Uptime: 4m Memory: 11.71 GiB used: 1.37 GiB (11.7%) Init: systemd v: 245 Compilers: gcc: 10.1.0 
           Shell: bash v: 5.0.17 running in: konsole inxi: 3.0.37

Content of etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=172B-18F9                            /boot/efi      vfat    umask=0077 0 2
UUID=a07822fc-e645-46ed-b464-f7fe2a93ad9c swap           swap    defaults,noatime 0 2
UUID=a98da364-c311-48aa-8422-bffc63af3949 /              ext4    defaults,noatime 0 1
UUID=d0d78356-62f2-48a5-aaa9-33c93e410021 /home          ext4    defaults,noatime 0 2

#storage mount
UUID=F2CE9013CE8FCE73 /mnt/data ntfs-3g  auto,exec,rw 0 0

I don't see a /boot/efi partition on /dev/sda, how does it come? Is Windows really installed in UEFI mode or is the /boot/efi of /dev/nvme0n1 used for Windows boot as well (which won't be recommendable)?

Perhaps also

sudo blkid
findmnt -s
findmnt /boot/efi

The sda drive is just data, windows is installed on sdb, I believe it boots from the reserved partition (sdb3), but I'm not completely sure which each of the Windows install partitions are. It also has an EFI system on sdb2. Does it matter which drive is sda and which is sdb? I wouldn't have thought so, but am not that familiar with the whole thing.

sudo blkid


/dev/nvme0n1p1: UUID="172B-18F9" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="3b22599c-3770-1c40-925f-9feb009632d4"
/dev/nvme0n1p2: UUID="a07822fc-e645-46ed-b464-f7fe2a93ad9c" TYPE="swap" PARTUUID="81041b02-0697-044f-a032-5c0b6f8b1b5c"
/dev/nvme0n1p3: UUID="a98da364-c311-48aa-8422-bffc63af3949" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="805bebbe-04f7-044a-b7f3-6b1edd2d7fe1"
/dev/nvme0n1p4: UUID="d0d78356-62f2-48a5-aaa9-33c93e410021" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="14302a5e-d6d7-ce4e-a32b-c0b8fd935738"
/dev/sda1: LABEL="Data" BLOCK_SIZE="512" UUID="F2CE9013CE8FCE73" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="0cd54db0-eb47-45e6-acd1-38d954e4957e"
/dev/sda2: LABEL="Backup" UUID="a4854c2d-0957-4038-bad7-63a1b7f32e02" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="06ff2953-c3a4-d84e-a51e-de761e8a35e7"
/dev/sdb1: LABEL="Recovery" BLOCK_SIZE="512" UUID="C8FE279DFE278334" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c42cd91e-9fc4-438a-aa3b-640ce304c360"
/dev/sdb2: UUID="5828-0632" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="62d1c6be-2f15-4a1c-8492-da5b06028a39"
/dev/sdb3: PARTLABEL="Microsoft reserved partition" PARTUUID="2e92f6c7-2c85-4881-b0d0-dc94782f7ab0"
/dev/sdb4: BLOCK_SIZE="512" UUID="C0E62F89E62F7F32" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="3dc965d4-4c2d-4f02-894d-8558d3e10da3"

findmnt -s


TARGET    SOURCE                                    FSTYPE  OPTIONS
/boot/efi UUID=172B-18F9                            vfat    umask=0077
swap      UUID=a07822fc-e645-46ed-b464-f7fe2a93ad9c swap    defaults,noatime
/         UUID=a98da364-c311-48aa-8422-bffc63af3949 ext4    defaults,noatime
/home     UUID=d0d78356-62f2-48a5-aaa9-33c93e410021 ext4    defaults,noatime
/mnt/data UUID=F2CE9013CE8FCE73                     ntfs-3g auto,exec,rw

findmnt /boot/efi

TARGET    SOURCE         FSTYPE OPTIONS
/boot/efi /dev/nvme0n1p1 vfat   rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro

I am not seeing anything "wrong" in the outputs you have posted so far, so this is a baffling case.

If I get time for it I might just have to re-install everything bit by bit with superfluous drives unplugged and check which stage breaks the Windows boot. I presume at the point where they were fresh installs with no other configuration they worked fine (although I didn't check specifically there).

Think that might take me a little while though.

can you check

sudo parted -l

sudo parted -l

Model: ATA ST1000DM010-2EP1 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size   File system  Name                  Flags
 1      1049kB  893GB   893GB  ntfs         Basic data partition  msftdata
 2      893GB   1000GB  107GB  ext4


Model: ATA CT500MX500SSD1 (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size    File system  Name                          Flags
 1      1049kB  556MB  555MB   ntfs         Basic data partition          hidden, diag
 2      556MB   661MB  105MB   fat32        EFI system partition          boot, esp
 3      661MB   677MB  16.8MB               Microsoft reserved partition  msftres
 4      677MB   500GB  499GB   ntfs         Basic data partition          msftdata


Model: WDC WDS500G2B0C-00PXH0 (nvme)
Disk /dev/nvme0n1: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  538MB   537MB   fat32                 msftdata
 2      538MB   17.7GB  17.2GB  linux-swap(v1)        swap
 3      17.7GB  49.9GB  32.2GB  ext4
 4      49.9GB  500GB   450GB   ext4

I've been asking around about this in other Linux communities and there was a suspicion that secure boot might be a cause of the fault. I've checked and it's definitely disabled, but in looking for this I found that my BIOS was in extended CSM mode rather than UEFI, I've switched this back but still no joy. I wonder if I'll have to re-install now this is set to conventional UEFI boot.

I only think here the boot, esp flags should be set instead of msftdata.

Have you tried to physically disconnect your data drive /dev/sda? Maybe this disk caused problems.

Is Windows currently in hybrid sleep mode? That might be the issue. Try booting into Windows and doing a command line shutdown with

shutdown /s

To ensure it fully shuts off. Sometimes it doesn’t even if you disable hybrid sleep. My Windows will still go into hybrid sleep mode even if I turn hybrid sleep off, if the battery gets low, or there’s some issue with updating

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by