recover dual boot after install windows 8.1

I installed windows 8 from scratch, then updated to 8.1
Then I installed OS 13.1 with the live USB but grub2 did not recognize win 8
so I run win8 repair tool (it was very tricky but at the end I was able to reset MBR and let win8 run again) and I lost again grub2 and OS

how can I reinstall grub2, being sure that it will also recognize win8

I did not understand anything about this new UEFI systems and I have no idea what I have in my system
this is my configuration:
toshiba portege z830 with SSD 128GB
3 partitions: /dev/sda0 is my swap, /dev/sda1 is OS, /dev/sda2 is windows (where there is a /boot folder and also a /EFI folder)

how can I check whether I have UEFI or not and setup the dual boot accordingly? I know there are many posts about it but none of them is explaining how to do that with a live USB

thanks for your help


try this,

its free (need registration) and able boot linux from windows boot menu.



Czeslaw M.

You can do all you ask from within Windows 8 itself, without installing any new tools. You should also make sure to disable Windows 8 Fast-start, if you haven’t already done so (see here:, see “Preparing Windows 8 for dual-booting”, item 4).

To check MBR/UEFI from Windows, execute the following commands (the “diskpart”-command should work with Vista and W7 too):

From Windows 8 Desktop:
<WindowsKey>-X —> Command Prompt (Admin)

list disk

Example from my test-installation - not a dual-boot setup (W8.1 under VMWare Workstation 10 - W8 and W8.1 are similar):

Microsoft DiskPart version 6.3.9600

Copyright (C) 1999-2013 Microsoft Corporation.
On computer: W81PRO64VM

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online           50 GB    15 GB        *


Leaving DiskPart...


An asterisk in the GPT-column indicates that you are running GPT.

If you do have GPT, you should be able to regain access to your Grub-menu from inside Windows too. (That may also be true for MBR, but I have no experience dual-booting Windows 8 in MBR mode).

You can try:

From Windows 8 Desktop:
-X —> Command Prompt (Admin)

Then apply a selection of the following commands to navigate in your BCD database (Anything following “#” (inclusive) are comments and should not be typed when applying commands):

mountvol z: /s      # This will mount the ESP partition as drive Z:
mountvol z: /d      # Drive z: is removed

bcdedit /set {bootmgr} path \EFI\Boot\bootx64.efi  #Select file to use for bootmgr. Here, Grub is the target. Adjust path to your PC
bcdedit /default {bootmgr}                         #Select bootmgr as default boot entry
bcdedit /default {<hex-ID-for-opensuse-secure>}    #As above, but use UUID instead of symbol. Can be used without ".../set {bootmgr}
bcdedit /enum all -v                               #List the BCD database using UUID everywhere
bcdedit /enum all                                  #List the BCD database using known symbols

Examples from my W8/13.1 installation. You should apply commands in approximately the sequence displayed:

C:\Windows\system32>bcdedit /enum all

Firmware Boot Manager
identifier              {fwbootmgr}
displayorder            {112d7697-46fe-11e3-beb8-806e6f6e6963}
timeout                 2

Windows Boot Manager
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Boot\bootx64.efi
description             Windows Boot Manager
locale                  en-GB
inherit                 {globalsettings}
integrityservices       Enable
default                 {current}
resumeobject            {63dfd18d-2c85-11e3-b718-adb8de629832}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Firmware Application (101fffff)
identifier              {112d7693-46fe-11e3-beb8-806e6f6e6963}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\opensuse\grubx64.efi
description             opensuse

Firmware Application (101fffff)
identifier              {112d7694-46fe-11e3-beb8-806e6f6e6963}
description             UEFI: Network Card

Firmware Application (101fffff)
identifier              {112d7695-46fe-11e3-beb8-806e6f6e6963}
description             UEFI: Network Card

Firmware Application (101fffff)
identifier              {112d7697-46fe-11e3-beb8-806e6f6e6963}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\opensuse\shim.efi
description             opensuse-secureboot

Firmware Application (101fffff)
identifier              {63dfd18a-2c85-11e3-b718-adb8de629832}
description             EFI Network

Firmware Application (101fffff)
identifier              {63dfd18b-2c85-11e3-b718-adb8de629832}
description             EFI USB Device

Firmware Application (101fffff)
identifier              {63dfd18c-2c85-11e3-b718-adb8de629832}
description             EFI DVD/CDROM

Windows Boot Loader
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.efi
description             Windows 8
locale                  en-GB
inherit                 {bootloadersettings}
recoverysequence        {63dfd18f-2c85-11e3-b718-adb8de629832}
integrityservices       Enable
recoveryenabled         Yes
isolatedcontext         Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \Windows
resumeobject            {63dfd18d-2c85-11e3-b718-adb8de629832}
nx                      OptIn
bootmenupolicy          Standard
detecthal               Yes

Windows Boot Loader
identifier              {63dfd18f-2c85-11e3-b718-adb8de629832}
device                  ramdisk=\Device\HarddiskVolume1]\Recovery\WindowsRE\Win
path                    \windows\system32\winload.efi
description             Windows Recovery Environment
locale                  en-GB
inherit                 {bootloadersettings}
displaymessage          Recovery
osdevice                ramdisk=\Device\HarddiskVolume1]\Recovery\WindowsRE\Win
systemroot              \windows
nx                      OptIn
bootmenupolicy          Standard
winpe                   Yes

Resume from Hibernate
identifier              {63dfd18d-2c85-11e3-b718-adb8de629832}
device                  partition=C:
path                    \Windows\system32\winresume.efi
description             Windows Resume Application
locale                  en-GB
inherit                 {resumeloadersettings}
recoverysequence        {63dfd18f-2c85-11e3-b718-adb8de629832}
recoveryenabled         Yes
isolatedcontext         Yes
allowedinmemorysettings 0x15000075
filedevice              partition=C:
filepath                \hiberfil.sys
bootmenupolicy          Standard
debugoptionenabled      No

Windows Memory Tester
identifier              {memdiag}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\memtest.efi
description             Windows Memory Diagnostic
locale                  en-GB
inherit                 {globalsettings}
badmemoryaccess         Yes

EMS Settings
identifier              {emssettings}
bootems                 No

Debugger Settings
identifier              {dbgsettings}
debugtype               Serial
debugport               1
baudrate                115200

RAM Defects
identifier              {badmemory}

Global Settings
identifier              {globalsettings}
inherit                 {dbgsettings}

Boot Loader Settings
identifier              {bootloadersettings}
inherit                 {globalsettings}

Hypervisor Settings
identifier              {hypervisorsettings}
hypervisordebugtype     Serial
hypervisordebugport     1
hypervisorbaudrate      115200

Resume Loader Settings
identifier              {resumeloadersettings}
inherit                 {globalsettings}

Device options
identifier              {63dfd190-2c85-11e3-b718-adb8de629832}
description             Windows Recovery
ramdisksdidevice        partition=\Device\HarddiskVolume1
ramdisksdipath          \Recovery\WindowsRE\boot.sdi


The key here is the “Windows Boot Manager” part. It has the identifier {bootmgr], the device is “partition=\Device\HarddiskVolume2” (= the second partition on my disk), its path is “\EFI\Boot\bootx64.efi”, where I did copy openSUSE’s shim.efi (look up “description opensuse-secureboot” and check its path).

Example 1 - the ideal solution:
So, given the above, the following would make sense if the Windows Boot Manager part pointed to Windows 8 itself, and is all that should be necessary. However, its success will depend on how your PC’s UEFI is implemented:

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

The last command may even be superfluous as it should already be the case for you in your situation.

Example 2 - not the ideal solution, but may be necessary:
My Toshiba doesn’t have an ideal UEFI implementation. So I did the following:

This preparation is necessary for the UEFI to find the secure-boot file necessary to boot openSUSE:

mountvol z: /s
xcopy z:\EFI\opensuse\*.* z:\EFI\Boot\*.*
copy z:\EFI\Boot\grubx64.efi z:\EFI\Boot\grubx64.efi.old
copy z:\EFI\Boot\shim.efi z:\EFI\Boot\grubx64.efi
mountvol z: /d

Then I did as follows, which is almost identical to example 1 above:

bcdedit /set {bootmgr} path \EFI\Boot\bootx64.efi
bcdedit /default {bootmgr}

Which makes for an equivalent situation. If openSUSE’s shim.efi changes in the future, I will need to repeat what I did between the two mountvol-commands above. To be honest, that will be a “when” it changes, not an “if”, as it will change when the MS certificate used for signing it expires and probably also with openSUSE releases, as it did between 12.3 and 13.1.

Example 3:
For a one-time boot of openSUSE without permanent change of the UEFI NVRAM, you should be able to use:

bcdedit /bootsequence <id>

where <id> is openSUSE’s <id>. In my case, the <id> is “{112d7697-46fe-11e3-beb8-806e6f6e6963}” for secure boot, and “{112d7693-46fe-11e3-beb8-806e6f6e6963}” for non-secure boot (“description opensuse”).

Please note that these ID’s aren’t the same across systems! They are generated during installation! So your <id> will be different, as will the <id> be if you were to reinstall the same system! So be sure to check out your own <id>!


Forgot to say:

Addition to my example 2 above:

Manipulating the BCD registry and NVRAM may not be enough. With my Toshiba (Sattellite P50-A 11J) I have to - after doing the BCD/NV RAM manipulation - exit Windows 8 and power it down properly (the powering down from Windows 8 Fast Start setup WILL NOT DO!). Then I have to power on again, while holding F2 down in order to enter UEFI (BIOS) setup. When I have entered the setup, I can press F10 and exit again and wait for the next boot to happen as I have set up.

The thing seems to be:
My Toshiba doesn’t read from the EFS partition except when entering the UEFI (BIOS) setup. That means changes made to the EFS partition isn’t moved into NVRAM unless I enter the UEFI setup. There seems to be ways to circumvent that, however, (the 13.1 installation procedure indicate that), but Windows 8 bcdedit.exe doesn’t do that.

I have yet to test Windows 8.1 under the same scenario, however, which may prove to be different.


So on my laptop, I did away with the GPT disk format and switched to MBR. I do question that a 128 GB SSD is large enough for a dual boot setup. I have a blog on GPT and MBR disks here:

Creating Partitions During Install for MBR and GPT Hard Disks - Blogs - openSUSE Forums

Here is how I formatted my 480 GB SSD for dual boot with Windows 8.1:

Thank You,

thanks dayfinger…I will try your solution asap and let you know