3

I've been using Ubuntu for a couple of days (work), and this morning I noticed that my Windows 10 wouldn't boot anymore. When I choose :

Windows Boot Manager (on /dev/sda2)

I get :

error: invalid signature.

My dual boot setup worked fine for months, and I have no idea of how it broke. As of now, only Ubuntu boots fine.

I tried many things, like running the usual boot fixing commands from a Windows installation medium.

bootrec.exe /fixmbr
bootrec.exe /fixboot
bootrec.exe /scanos
bootrec.exe /rebuildbcd

The very last command gave the following error:

The requested system device cannot be found

So I followed these instructions, but still no luck.


I also tried to use grub-customizer to create a manual entry for Windows 10, containing the following lines :

menuentry 'Windows 10 on /dev/sda2 MANUAL' {
    insmod part_msdos
    insmod ntfs
    set root=(hd0,2)
    chainloader +1
}

Selecting this entry in grub gives:

BOOTMGR missing
Press Ctrl+Alt+Del

Here's my boot-info : http://paste.ubuntu.com/24947042/

3

I see you've found a solution, and it's one of several I was going to suggest. (Disclaimer: I maintain rEFInd, so I'm not unbiased.) I do want to provide an analysis to suggest what may have gone wrong, though. Also, I have an important suggestion that may help you avoid future problems.

Based on your Boot Repair output, your first disk (/dev/sda, a 112 GiB disk) uses GPT, has an EFI System Partition (ESP), and has both Windows and Ubuntu (GRUB) EFI-mode boot loaders on its ESP. It looks like Windows is installed on this disk. You also have a second disk, /dev/sdf, a 932 GiB disk that uses MBR partitioning and has both Windows and Ubuntu partitions. It looks like Ubuntu is installed on this disk.

Ordinarily, the partition table type (GPT vs. MBR) is tied to the way the computer boots -- EFI/UEFI mode with GPT and BIOS/CSM/legacy mode with MBR. There are exceptions to this rule, but it's a useful starting point, especially for Windows. Because your computer has both GPT and MBR disks, this creates some ambiguity; but it looks like Windows originally booted in EFI mode from the GPT disk. Since everything used to work, I'd further hypothesize that Ubuntu was installed in EFI mode, too; but the Ubuntu installation booted from the ESP on /dev/sda to the actual installation on the MBR /dev/sdf. This is perfectly legal; however, it probably led to problems because of an assumption in a script somewhere. This is where I begin to move beyond fairly safe inferences into the realm of sheer speculation. In particular, my guess is that you did a software update in Ubuntu that ended up either breaking GRUB's ability to boot Windows. This can happen sometimes, especially if the Windows Fast Startup and/or Hibernate features are active. These features can cause filesystem damage, which can make the Windows boot loader seem to disappear or malfunction, either temporarily or permanently. Thus, it's imperative that these features be disabled, and I suggest you do so. See here and here for instructions on doing so.

You then exacerbated the problem by performing recovery actions that were designed for BIOS-mode Windows installations. This put a BIOS-mode Windows boot loader on the first sector of /dev/sda, among other things. Given that rEFInd worked, at least these attempts didn't damage anything further, just added useless cruft.

In any event, installing rEFInd bypassed the hash that is now the GRUB configuration, thus getting things working. If you're happy with rEFInd, you might as well keep using it. An alternative would be to try to fix the EFI-mode GRUB installation. Boot Repair can often do this, although your computer's odd mix of MBR and GPT, as well as traces of both EFI-mode and BIOS-mode GRUB installations, might confuse that tool. Thus, unless you're seriously unhappy with rEFInd, it's probably best to follow the adage "if it ain't broke, don't fix it." I do strongly advise you to disable Fast Startup and Hibernate in Windows, though; even if rEFInd can launch both Ubuntu and Windows now, if those features are active they could cause new problems in the future.

  • A very instructive answer ! Indeed, Hibernate and Fast Boot were disabled in Windows because I already had problems with those features, when trying to access my NTFS partitions from Ubuntu. You're right, I have an ESP partition on my small SSD that boots (usually) both Windows (on /dev/sda) and Ubuntu (on /dev/sdf). I'll keep using rEFInd, since I found it very convenient. Install the .deb package file and there you go, everything was fixed. Thank you for all the information about EFI and BIOS modes, my lack of knowledge about these caused me many troubles. – Brummbaer Jun 26 '17 at 16:07
2

Problem solved, I installed rEFInd using the .deb package file. Now everything works fine!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.