[ipxe-devel] wimboot issue with server 2012 on physical servers

Ian Bannerman ian at internals.io
Wed Apr 30 03:02:02 UTC 2014


Ok, so what we know so far is the boot process has done this in terms of execution flow:

Power On -> BIOS -> iPXE -> wimboot -> bootmgr.

Somewhere at/after bootmgr things are failing. Now this could be because of issues with iPXE, wimboot, the BIOS, or something else, but at least we know bootmgr or something later in the boot process are executing when things break.


If you have a functional Windows 8/Server 2012 or newer machine, you can copy your BCD file over to it, open a command prompt, and run the bcdedit command: bcdedit /store <path to your bcd file> /set {default} bootmenupolicy legacy
Bcdedit will modify the BCD file to use the legacy boot menu policy, which for our purposes will change the visual boot flow to go from iPXE/wimboot -> two progress loading bars -> the Windows logo, and further narrow down where things go wrong.


If you don't have a Windows machine you can use, for this test you can also try using this BCD file I've applied the setting to: https://onedrive.live.com/redir?resid=1F9FB6FE110265E6!2126&authkey=!AN_v1cLMXND2bVM&ithint=file%2c

Let us know what you see on boot as a result of trying this change!--Ian

From: amit.shah at citrix.com
To: ian at internals.io; ipxe-devel at lists.ipxe.org
Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers
Date: Wed, 30 Apr 2014 02:53:01 +0000









Hi Ian,
 
I have tried on a couple of physical servers (same types) and see same issue.
 
After commenting initrd for BCD I do see an error screen (Recovery screen complaining about missing BCD).
 
I am not sure how do I run bcdedit without OS being loaded. Can you explain ?

 
Thanks a lot for your help.
 
Amit

 


From: Ian Bannerman [mailto:ian at internals.io]


Sent: Tuesday, April 29, 2014 10:14 PM

To: Amit Shah; ipxe-devel at lists.ipxe.org

Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers


 

Does the problem only happen on that machine, or do other, different, physical machines have the same problem? 

 


 


Also, let's try to narrow down where things are going wrong. If you comment out the initrd for the BCD, do you see an error after everything is downloaded? If so, we know we're making it
 that far.


 


If so, can you use bcdedit to enable the legacy menu: bcdedit /store <path to your bcd file> /set {default} bootmenupolicy legacy


 


That will cause a few loading bars before you should see the Windows logo (which we're not reaching). What do you see in this case?


 


--Ian




From:
amit.shah at citrix.com

To: ian at internals.io; 
ipxe-devel at lists.ipxe.org

Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers

Date: Wed, 30 Apr 2014 01:25:58 +0000

Hi Ian,
 
The new wimboot did solve the issue with Server 2012 R2 of “bootmgr.exe not found”. But even in this case I am left with a blank screen after all files finish
 loading. Also to re-iterate the same script works on a VM on xen but gives a blank screen on a physical server.
 
Thanks
Amit

 


From: Ian Bannerman [mailto:ian at internals.io]


Sent: Tuesday, April 29, 2014 8:56 PM

To: Amit Shah; ipxe-devel at lists.ipxe.org

Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers


 

Ok, great. This should be pretty straightforward then. There were some changes to how bootmgr.exe was stored in bootmgr and wimboot was recently updated to support this. Can you grab the
 latest version from here and see if it resolves your issue - https://git.ipxe.org/releases/wimboot/wimboot-latest.zip ?

 


 


If that does not work, please try directly using bootmgr.exe (thus avoiding wimboot extracting it) by grabbing the file from inside the winpe.wim file at Windows\Boot\PXE\bootmgr.exe


 


 


--Ian




From: 
amit.shah at citrix.com

To: ian at internals.io; 
ipxe-devel at lists.ipxe.org

Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers

Date: Wed, 30 Apr 2014 00:51:59 +0000

Server 2012. This is the script
 
#!ipxe
echo ======================================================================
echo freeing all loaded images to ensure wimboot works
imgfree
echo ======================================================================
 
set base <%= repo_url.sub(%r{/$}, '') %>
kernel <%= file_url('wimboot', true) %>
initrd ${base}/bootmgr                          bootmgr
initrd ${base}/boot/bcd                         BCD
initrd ${base}/boot/fonts/segmono_boot.ttf      segmono_boot.ttf
initrd ${base}/boot/fonts/segoe_slboot.ttf      segoe_slboot.ttf
initrd ${base}/boot/fonts/segoen_slboot.ttf     segoen_slboot.ttf
initrd ${base}/boot/fonts/wgl4_boot.ttf         wgl4_boot.ttf
initrd ${base}/boot/boot.sdi                    boot.sdi
initrd ${base}/winpe.wim                        boot.wim
 
echo ======================================================================
imgstat
echo now booting WinPE client
boot
 
 
Server 2012 R2 doesn’t work atall. I get an bootmgr.exe not found error. Is there any fix available for this ?
 
Thanks
Amit
 


From: Ian Bannerman [mailto:ian at internals.io]


Sent: Tuesday, April 29, 2014 8:22 PM

To: Amit Shah; ipxe-devel at lists.ipxe.org

Subject: RE: [ipxe-devel] wimboot issue with server 2012 on physical servers


 

Server 2012 or Server 2012 R2? Can you please share the wimboot portion of your ipxe script?

 


Thanks!


--Ian




From: 
amit.shah at citrix.com

To: ipxe-devel at lists.ipxe.org

Date: Tue, 29 Apr 2014 21:01:25 +0000

Subject: [ipxe-devel] wimboot issue with server 2012 on physical servers

Hi,
I am trying to install Windows Server 2012 on physical servers. Followed the instructions here
http://ipxe.org/wimboot. After loading all the files I see a blank screen. I found several posts with this issue but with no definitive solution.

 
http://forum.ipxe.org/showthread.php?tid=7085
http://forum.ipxe.org/showthread.php?tid=7121
http://lists.ipxe.org/pipermail/ipxe-devel/2013-January/002176.html
 
I added the missing font, made sure the bios is at latest, etc.
 
The same task works fine on a VM hosted on Xen but doesn’t work on a physical servers. These are some hardware details
 
"bios_vendor":"HP",
"bios_version":"P58",
"bios_release_date":"05/02/2011",
"manufacturer":"HP",
"productname":"ProLiant DL360 G5",
"serialnumber":"USE839N9CA",
"uuid":"33393935-3234-5553-4538-33394E394341",
"type":"Rack Mount Chassis"
 
Are there any know issues ? Any help is appreciated.
 
Thanks
Amit  



_______________________________________________ ipxe-devel mailing list 
ipxe-devel at lists.ipxe.org 
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel











 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ipxe.org/pipermail/ipxe-devel/attachments/20140429/54404514/attachment.htm>


More information about the ipxe-devel mailing list