UEFI/Dual Boot W8/oS13.1: Cant boot 13.1 after first start of W8

Morning all,

I wanted to install openSUSE 13.1 on a Sony Vaio SVE1713A6EW. Installation of openSUSE 13.1 from DVD, update repos enabled during installation. Fastboot and hibernation of W8 was switched off before
Following the system recommendation the W8 data partition was reduced, and bootloader was set to /dev/sda3
System boots fine using UEFI and secure boot. Sounds pretty perfect up to here.

Then, from the GRUB boot menu, W8 was chosen for boot. Afterwards, GRUB was never displayed again, In fact I was unable to boot oS13.1 again.

I used the rescue system and tried various settings. See https://bugzilla.novell.com/attachment.cgi?id=586490 for a detailed description (openDocument Format, 3.1MB with some pictures in it)
The fact that I dont see a ‘consistent’ EFI boot entry set makes me believe it might be a firmware bug.

Thanks for bringing this to opensuse forums. I find it more congenial for discussion than the bugzilla.

Here is what I am noticing from your “.odt” document:

  1. You have two EFI partitions. Presumably, the second one was created by the opensuse install. This seems to be involved in your problem. It’s a bit hard for me to decide whether this is an installer bug. My Dell Inspiron actually worked pretty well with two EFI partitions. So maybe it depends on the firmware as to whether that’s a wise choice.
  2. You have two NVRAM entries for Windows (in the “efibootmgr -v” output). That never happened to me. My experience is that if Windows does not find its boot entry, it will add it. But it always found it for me, even when I had three EFI partitions (experimentally, two on the first disk and one on the second disk). This is where I suspect a firmware problem might be involved.

If I am understanding correctly, you can still boot an opensuse USB, and access the “efibootmgr” command.

On my system I can hit F12 during boot, and get a BIOS menu for selecting which system to boot. I have heard that on HP computers, the equivalent is to hit F9 during boot. Does your BIOS offer that ability? If it does, what systems are shown as bootable on the menu? My Dell Inspiron shows Windows and opensuse. It also show two bootable disk drives.

Can you check those EFI partitions. You should be able to boot opensuse from USB, and mount the partition at “/mnt”. I am particularly interested in the following:

What is in “/EFI/Boot” for each partition?
Is there a directory “/EFI/Microsoft/Boot” in each of those partitions (my guess is yes).

My best guess is that for “/dev/sda1”, there is a “/EFI/Boot” containing “bootx64.efi”, and that file in turn is identical to “bootmgfw.efi” in the “/EFI/Microsoft/Boot” directory.

Can you find out which of those Windows entries is currently being used by Windows:

From recollection, I think the command (from an Administrator command prompt)


BCDEDIT /enum bootmgr

will get some cryptic information what will turn out to match one of the NVRAM entries for Windows.

In fact both EFI partitions seem to come from the Win-installation - see below

If I am understanding correctly, you can still boot an opensuse USB, and access the “efibootmgr” command.

On my system I can hit F12 during boot, and get a BIOS menu for selecting which system to boot. I have heard that on HP computers, the equivalent is to hit F9 during boot. Does your BIOS offer that ability? If it does, what systems are shown as bootable on the menu? My Dell Inspiron shows Windows and opensuse. It also show two bootable disk drives.

Correct, I can boot an openSUSE DVD. Booting the desinfec’t- USB stick (an antivirus-stick based on Ubuntu) fails, I assume it has to do with the missing signature (-> secure boot)
Vaio-Laptops behave different - DEL, ESC, F2, F12 - all do not work. You have to start the laptop via the ‘Assist’ Button to get into the boot menu

Can you check those EFI partitions. You should be able to boot opensuse from USB, and mount the partition at “/mnt”. I am particularly interested in the following:
What is in “/EFI/Boot” for each partition?
Is there a directory “/EFI/Microsoft/Boot” in each of those partitions (my guess is yes).

My best guess is that for “/dev/sda1”, there is a “/EFI/Boot” containing “bootx64.efi”, and that file in turn is identical to “bootmgfw.efi” in the “/EFI/Microsoft/Boot” directory.

Correct: In /dev/sda1, there is a /EFI/Boot/bootx64.efi [1354480 bytes] as well as a /EFI/Boot/Microsoft/bootmgfw.efi of the same size

In /dev/sda3, there is a /EFI/Boot/bootx64.efi [1354472 bytes] as well as a /EFI/Boot/Microsoft/bootmgfw.efi of the same size, and some more entries than in the corresponding sda1-entry.

Additionally we have a /dev/sda3/EFI/opensuse/ directory with a couple of entries (MokManager.efi, grub.cfg, grub.efi, grubx64.efi, shim.efi)

Can you find out which of those Windows entries is currently being used by Windows:

From recollection, I think the command (from an Administrator command prompt)

BCDEDIT /enum bootmgr

will get some cryptic information what will turn out to match one of the NVRAM entries for Windows.

[/quote]
It uses partition 3:

Windows-Start-Manager
---------------------
Bezeichner              {bootmgr}
device                  partition=\Device\HarddiskVolume3
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  de-DE
inherit                 {globalsettings}
default                 {current}
resumeobject            {e86c68b4-b14c-11e2-966c-a6072a543672}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Thanks!

Update: Looks like the description in https://forums.opensuse.org/showthread.php/492719-recover-dual-boot-after-install-windows-8-1?highlight=bcdedit#3 fixes the problem.
What I did:
From the Windows admin console:

bcdedit /set {bootmgr} path \EFI\opensuse\shim.efi
bcdedit /default {bootmgr}

This did not work in the first glance (system restart)
Additionally, shut down Windows complete, restart the Vaio to get into the BIOS (Boot via ASSIST-Button), save it with F10, then restart the PC…the GRUB menu is back!

Thanks for your support guys!

Great. I’ve been using that.

A word of caution. If you apply the recent update to Windows 8.1, then undo that BCDEDIT change before applying the update. You can redo the change afterwords. My first attempt to apply that update failed, until I undid that change.

And to be clear:

Going from Windows 8 to Windows 8.1: That’s not a problem, but it will delete your change.
Applying the large update to Windows 8.1: that’s the one that might not work unless the BCD database has the original Windows content. The update seems to work. Then you reboot for the final steps of the update install, and see the update being backed out.

nrickert wrote:

>
> DocB;2637682 Wrote:
>> Update: Looks like the description in
>> https://forums.opensuse.org/showthread.php/492719-recover-dual-boot-after-install-windows-8-1?highlight=bcdedit#3
>> fixes the problem.
>> What I did:
>> From the Windows admin console:
>> >
> Code:
> --------------------
> > > bcdedit /set {bootmgr} path \EFI\opensuse\shim.efi
> > bcdedit /default {bootmgr}
> --------------------
>> >
>
> Great. I’ve been using that.
>
> A word of caution. If you apply the recent update to Windows 8.1, then
> undo that BCDEDIT change before applying the update. You can redo the
> change afterwords. My first attempt to apply that update failed, until
> I undid that change.
>
> And to be clear:
>
> Going from Windows 8 to Windows 8.1: That’s not a problem, but it will
> delete your change.
> Applying the large update to Windows 8.1: that’s the one that might not
> work unless the BCD database has the original Windows content. The
> update seems to work. Then you reboot for the final steps of the update
> install, and see the update being backed out.
>

I cheated. I was running 12.3 and 13.1 was still in the milestone/rc stage
so after updating to 8.1 I installed the latest version of 13.1 to my test
partition(s) and let the install take care of the issues :wink:

Gotta love these humongous disks!


Will Honea

Fortunately there is no real need to upgrade to W8.1: We just have to keep one native Windows-PC due to our Tax agent running DATEV-Software. I will try to get this into a virtual machine, so we can get rid of native Windows.

It is ridiculous: The most sensitive information (tax and finance) runs completely on the most insecure platform (DATEV runs and supports only Windows…)

LOL.

Tax software is about all that I now run on Windows. But I’ve cheated. I’m sharing a LUKS encrypted partition (from opensuse) on the home network with samba, and I’m keeping all of the sensitive data there when I use Windows.