Problem booting Win8 from grub4dos

Discussion in 'Windows 8' started by doveman, Mar 19, 2014.

  1. doveman

    doveman MDL Member

    Apr 22, 2010
    209
    9
    10
    #1 doveman, Mar 19, 2014
    Last edited by a moderator: Apr 20, 2017
    I had Win7 installed on my SSD and installed Win8.1 to my HDD but unfortunately forgot to hide the SSD partitions, so now Win8 is on Y: (which I can live with) and it installed the Win8 boot files to the Win7 SSD partition.

    I use grub4dos to boot and the first entry uses Windows Loader to boot Win7 but currently loads the Win8 boot menu with Windows 7 and Windows 8.1 entries (I set it back to legacy mode as with the GUI mode it had to reboot once after selecting Windows 7 before it booted). That's not a problem as I'll be able to delete the Windows 8 entry eventually and then this menu won't show and it will boot straight to Win 7.

    titleWin7 (SSD)
    hide(hd1,0)
    hide (hd1,1)
    unhide(hd1,2)
    unhide (hd0,0)
    unhide(hd0,1)
    root(hd0,0)
    chainloader/AUHMX

    titleWin8 (HD p2)
    hide(hd1,0)
    hide(hd1,1)
    unhide(hd1,2)
    root(hd1,2)
    chainloader+1

    I want the second entry to boot directly to Win 8 but first I had to copy the boot files to that partition, as it hadn't put any on there when I installed Win 8. I found I couldn't copy the Boot/ folder in Windows, even a VHD as even with that the files seemed to be in use and locked but EasyBCD let me Backup the files from the Win7 partition and restore them to the Win8 one. This is the working Win8.1 entry that I backed up and restored:

    Code:
    identifier              {68403e43-a682-11e3-8346-e2aa5cf1291b}
    device                  partition=F:
    path                    \Windows\system32\winload.exe
    description             Windows 8.1
    locale                  en-US
    inherit                 {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
    integrityservices       Enable
    allowedinmemorysettings 0x15000075
    osdevice                partition=F:
    systemroot              \Windows
    resumeobject            {68403e42-a682-11e3-8346-e2aa5cf1291b}
    nx                      OptIn
    bootmenupolicy          Legacy
    useplatformclock        Yes
    I found I could backup the BCD from the SSD with EasyBCD and then restore it to the Win8 partition, so I've got the same entry on both. However, now when I select to boot Win8 from grub4dos (either using chainloader +1 which loads the Windows boot menu or chainloader /bootmgr which skips it) it says it can't verify system32\winload.exe and so fails to boot. I can still boot Win8 by selecting the Win7 grub4dos entry and selecting Win8 from the Windows boot menu that appears but I want to be able to keep them completely separate and boot directly from g4d without seeing another redundant boot menu.

    I don't really understand as either route should be loading the same winload.exe from the Win8 partition and the boot files on the Win7 SSD partition were created/installed by Win8 (hence why I had to set it to legacy mode to get rid of the GUI bootmenu), so I'd think they should work when copied to the Win8 partition.