1

Whenever I run boot-repair, I can boot once into Win 10. After I boot to Linux again, I get the above message whenever I try to boot again into Win 10.

The exact message is:

error: can't find command 'parttool'
error: can't find command 'drivemap'
error: invalid EFI file path

Tried a few things but can't seem to make it work.

This is the boot-repair log: https://paste.ubuntu.com/p/9rDss5tfHP/

  • SDA is the Win10 LTSC Disc
  • SDC is Linux

Some further commands:

[ -d /sys/firmware/efi ] && echo "EFI boot on HDD" || echo "Legacy boot on HDD"  
EFI boot on HDD

Windows 10 label: dos label-id: 0x4b16c6ab device: /dev/sda unit: sectors

/dev/sda1 : start= 2048, size= 1024000, type=7, bootable /dev/sda2 : start= 1026048, size= 232342258, type=7 /dev/sda3 : start= 233369600, size= 1067008, type=27

// Edit:

I've also tried adding a custom boot entry for Win 10, it's working but after restart, I have to boot-repair again from live-usb to get to choose which OS.

menuentry "Windows 10" --class windows --class os {
    insmod ntfs
    search --no-floppy --set=root --fs-uuid 1D584C40586B2873
    ntldr /bootmgr
}

Boot-repair sometimes shows a Windows 'legacy' error and I have to reboot in another way to get it running again. I guess the legacy thing is the real problem?

It's also weird that I can boot twice back and forth and only then again the same problem.

Hamada
  • 145
Jet
  • 21
  • With multiple drives, you do not run the auto fix in Boot-Repair as you do not want grub in every MBR. You really want Windows BIOS boot loaders in MBR of sda & sdb. And it looks like you originally installed Ubuntu in UEFI boot mode. You have newer UEFI system, but old BIOS/MBR type installs. Use Boot-Repair & install Windows boot loaders to MBR of sda & sdb. You also need to turn off Windows fast startup. http://askubuntu.com/questions/843153/ubuntu-16-showing-windows-10-partitions & https://askubuntu.com/questions/145902/unable-to-mount-windows-ntfs-filesystem-due-to-hibernation – oldfred Jun 26 '20 at 20:35

1 Answers1

3

With BIOS and multiple drives, you do not run the auto fix in Boot-Repair as you do not want one grub in every MBR. You really want Windows BIOS boot loaders in MBR of sda & sdb as those are Windows only drives and grub only in sdc. Grub also only boots working Windows 10, so after Windows updates which turn fast start up back on, you normally have to directly boot Windows from BIOS, so you can turn fast start up back off.

Use Boot-Repair's advanced mode & install a Windows type boot loaders to MBR of sda & sdb. Or use your Windows repair/recovery drive to repair your Windows installs.

https://sourceforge.net/p/boot-repair/home/Home/

You also need to turn off Windows fast startup.

Unable to mount Windows 10 partition; it "is in an unsafe state"

Unable to mount Windows (NTFS) filesystem due to hibernation

And it looks like you originally installed Ubuntu in UEFI boot mode. UEFI & BIOS are not compatible. Or once you start booting from UEFI, you cannot switch modes and grub then can only boot other installs in same boot mode.

You have newer UEFI system, but old BIOS/MBR type installs. Long term you need to think about reinstalling Windows & Ubuntu in UEFI boot mode. Microsoft has required vendors to install Windows in UEFI boot mode to gpt partitioned drives since 2012. But BIOS/MBR still works for now.

oldfred
  • 12,100
  • Thank you for this wonderful explanation, it all makes sense now. I reinstalled Windows in UEFI and all is well. – Jet Jul 25 '20 at 17:15