[ipxe-devel] Booting a Mac into WDS with ipxe.usb

Yadin Flammer yxf4 at psu.edu
Wed Jun 19 23:24:45 UTC 2013

Another update on my adventures here.

I found a working tutorial and set of links for setting up grub4dos on a 
flash drive and set up both gpxe and ipxe entries on it.  gPXE boots up 
and works as expected on the Dell.  The one Mac simply will not show a 
bootable USB device, Apple fail on that one.  The other Mac tries to 
start gPXE and fails out trying to find a network adaptor.  I'm guessing 
this confirms that it uses hardware that is not supported in gPXE.  Bummer.

iPXE wouldn't load from grub4dos, it threw error 62: the number of heads 
must be specified.  No idea what this means or why grub can't load the 
iPXE.iso file normally, but a thread about the same issue with 
gparted.iso led me to put in some head and sector variables that got it 
to boot.  In the end, a much better solution in my environment than 
needing Unix to make a drive.  That's the good news.

However, in the end, same boot issue as before.  Once I choose an image 
to boot from WDS, it goes to the black "Windows is loading files..." 
screen with the server IP at the bottom and file=\Boot\Boot.SDI and the 
progress bar doesn't budge.  Normally of course it flips through that in 
half a second and moves on to the rest of the boot process and 60 
seconds later I'm installing Windows.  This is now 3 ways on 3 systems 
starting up iPXE, same failure each time, it won't actually boot to a 
network image.  If feels like although iPXE can see all these new 
network devices, it can't actually use them properly for more than a 
couple bits, so it gets an IP, gets the image list from WDS, but then 
can't move enough data to boot one.

Any ideas how to get iPXE to actually boot a WDS image like gPXE did?  
I'm obviously having trouble believing that with 100% failure that no 
one has run into this before, so I'm hoping there is a simple solution 
just missing from the documentation like that whole eject thing.


On 6/19/2013 5:23 PM, Yadin Flammer wrote:
> On 6/19/2013 4:19 PM, Robin Smidsrød wrote:
>> Well, you're writing directly to the block device instead of using 
>> high-level file routines. It's understandable that you need to flush 
>> the device cache for that kind of activity.
> Understandable to one who understands all the intricacies of what is 
> happening perhaps  ;)
>> Can you give us a screenshot/picture of what's going on? My guess is you
>> might be dealing with a driver strangeness, especially if you're using
>> the existing bnx2 (Broadcom) driver. I'd recommend you try to build with
>> DEBUG=bnx2,tg3 to see if you get any more info out of it. Also, when you
>> boot up iPXE, what value do you have for "chip" when using the "config"
>> command?
> Again, not understanding all the inner workings of this, I need 
> something more to work with here.
> Are you saying I should delete the ipxe directory, git clone again, 
> and then "make DEBUG=bnx2,tg3" then dd the ipxe.usb built from that?
> I found the ipxe command line and pulled the config on 3 of the 
> systems I'm working with most.  Their chip values are:
> Dell: 82566dm-2 (Intel gig ethernet?)
> MacBook Pro: ar5416  (Atheros?  I think it's listing the wireless 
> instead of the ethernet since it seems to go through these in the 
> "wrong" order?  Not sure how to pull "chip2" as it were...)
> Mac Mini: 14e4-16b4  (broadcom?)
>> The first thing is to start showing us what you're actually doing
>> instead of just talking about it. Details, details, details! To be able
>> to debug remotely we need logs, hardware details and descriptions of
>> your setup and what you're trying to do. It would also be useful to
>> understand what your end goal is, maybe you're going about it in the
>> wrong, or unoptimal, way.
> Short of getting a camera and uploading a photo documentary somewhere 
> of what I'm doing, I'm not sure what you're asking for here (I can do 
> that if need be, just take a bit).  I thought I had in my "talking" 
> given a lot of details about what I'm doing and working with, sorry if 
> it's not what you're looking for, it was all I knew to say.  With such 
> a low level thing, and no readable file system, how are there any logs 
> that I could send and where are they?  If you have specific questions 
> (like the chips above) or can tell me things you'd like me to do, I'm 
> happy to accommodate.  To review though:
> I have a WDS server set up with multiple boot images and restore 
> images working as desired when PXE booting Dell systems to deploy a 
> system image to them.
> I'd like to be able to do this same thing but on our dual boot Mac 
> systems.  Because EFI on a Mac has no PXE layer, I can't boot from the 
> WDS server natively.  Google led me to gPXE, which works perfectly 
> from CD.  So far so good.
> To be more convenient, I wanted to use gPXE from a USB key rather than 
> have people deal with CDs both in bulk and speed.  Also, some Mac 
> systems like the Air have no built in Cd drive.  This is where it all 
> stopped.
> gPXE doesn't work from USB as it does from CD.
> I have been told to stop trying to deal with gPXE because it's dead 
> and I should use iPXE.
> iPXE does not work end to end at all on any system (3 different Mac, 2 
> different Dell, all of which gPXE from CD works fine) from any boot 
> media (CD or USB).  As mentioned, it fails to actually initiate the 
> boot image once selected from WDS.
> If there is a better way, or some other critical easy to miss info 
> like issuing an eject command that would make iPXE work, I'm all 
> ears.  Not being any more familiar with iPXE than what is at 
> http://ipxe.org/download (and not even fully grasping all that), and 
> not being a coder or low level unix guru, exact command walk-throughs 
> would be helpful  :)  I wondered if there was something with that EFI 
> note at the end I should be concerned about, but there is no 
> supporting information to explain what that's all about.
> Thanks!
> Yadin

   Yadin Flammer - Systems Administrator
   College of Arts&  Architecture, Penn State University
   228 Borland Building              Office Phone: 814-865-0990
   University Park, PA 16802         Dept. Phone:  814-865-1571
   Email: yxf4 at psu.edu               Dept. Fax:    814-863-6227

More information about the ipxe-devel mailing list