Is there any way to boot "pxeboot.n12" through iPXE?

567 views
Skip to first unread message

Karthikeyan S

unread,
May 15, 2014, 9:35:12 AM5/15/14
to puppet...@googlegroups.com
Hi,

We have followed the steps specified here, http://etherboot.org/wiki/winpe, and we are successfully able to boot through "WinPE" using DHCP and TFTP.

Always failing with "wimboot" method to get the "WinPE" so we are trying this PXE boot using "pxeboot.n12"

We want to know is there any way to boot "pxeboot.n12" through iPXE?

We have tried this in iPXE script,

kernel tftp://10.0.0.5/Boot/pxeboot.n12
initrd tftp://10.0.0.5/Boot/bootmgr.exe BOOTMGR
initrd tftp://10.0.0.5/Boot/BCD BCD
initrd tftp://10.0.0.5/Boot/boot.sdi BOOT.SDI
initrd tftp://10.0.0.5/Boot/winpe.wim boot.wim

but getting the below error,
No more network devices,
BOOTMGR is missing

Regards,
Karthik

Daniel Pittman

unread,
May 15, 2014, 11:40:56 AM5/15/14
to puppet...@googlegroups.com
Hey. So, you might want to check out the `vmware_esxi.task`
boot_install.erb script, which does a similar sort of chain-loading
deal to get the pxelinux bootloader working as expected.

I also see, looking at http://etherboot.org/wiki/winpe that you might
need to do some work to, eg, get backslash separated content in the
right place, etc. I don't know if that is the most current
documentation, though, since I am not familiar with pxeboot.n12 :/

Thanks for keeping us up to date. I suspect that the same sort of
DHCP option hacking prior to booting pxeboot.n12 is all you need --
hack it so it points to the right SMB repo, and it should just work.
:)
> --
> You received this message because you are subscribed to the Google Groups
> "puppet-razor" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to puppet-razor...@googlegroups.com.
> To post to this group, send email to puppet...@googlegroups.com.
> Visit this group at http://groups.google.com/group/puppet-razor.
> For more options, visit https://groups.google.com/d/optout.



--
Daniel Pittman
⎋ Puppet Labs Developer – http://puppetlabs.com
♲ Made with 100 percent post-consumer electrons

Karthikeyan S

unread,
May 16, 2014, 7:16:52 AM5/16/14
to puppet...@googlegroups.com







Thanks Daniel.

We tried to use the concept given from vmware_esxi task.
But the pxeboot.n12 is loaded and also  loaded files from winpe.wim and after that it got stuck its not able to proceed.
Enclosed the screen shot of the same.

If I use the same pxeboot.n12 in the dhcpd.conf instead of undionly.kpxe - windows is loading properly.

Am I missing something .. in the steps that we followed.

regards

Daniel Pittman

unread,
May 16, 2014, 1:20:06 PM5/16/14
to puppet...@googlegroups.com
G'day Karthikeyan.

Sadly, the answer to "are you missing anything" is "I don't know".  I am not familiar with the pxeboot.n12 tool, or how it might go wrong.  I wish I could be more help to you in resolving that.

Karthikeyan S

unread,
May 22, 2014, 8:46:21 AM5/22/14
to puppet...@googlegroups.com
Thanks Daniel!

Through VM Player -- when I selected "Split virtual disk into multiple files" the pxe to ipxe to pxe redirection didnt work.
But when I tried the option "Store virtual disk as a single file" the pxe to ipxe to pxe redirection worked.

Not able to get it -- why it worked in the second case and not in the first case.

regards

Daniel Pittman

unread,
May 22, 2014, 2:16:39 PM5/22/14
to puppet...@googlegroups.com
Wow.  That is really interesting.  FWIW, I use split disks and everything seems to work fine, but that is with VMWare Fusion.  I guess you should report that to VMWare -- it sounds like some sort of bug in their software!

Karthikeyan S

unread,
May 26, 2014, 2:54:16 AM5/26/14
to puppet...@googlegroups.com
Hi Daniel,

Found the issue, the "undionly.kpxe" is not the correct one. We tried with the latest one from iPXE website, now chain boot is working.
But still we have one problem. In "boot_wim.erb" we have specified the iPXE command "chain "tftp://<server>/pxeboot.n12". Correspondingly we have changed the "winpe.wim" to contain the installation commands which will fetch files from samba file share and installation is went through fine.

windows.yaml contains the below:
boot_sequence:
  1: boot_wim
  default: boot_local

But after installation Razor is not detecting the client machine as OS installed and not going to hard disk boot. Instead after rebooting also its again doing the same 1st boot sequence that is "1. boot_wim". We don't know how to fix this.

Is there any post installation task we have to do to razor should identify the machine as OS installed?

Regards,
Karthik

Karthikeyan S

unread,
May 26, 2014, 3:20:57 AM5/26/14
to puppet...@googlegroups.com
Hi Daniel,

We have tried copying "pxeboot.n12" as "pxelinux.0" inside vmware_esxi tasks in order to mimic as if it is a vmware installation. It went to all the steps fine but again same problem remains.
After installation its rebooted and again going to the same sequence(1: boot_wim).

Regards,
Karthik

Karthikeyan S

unread,
May 27, 2014, 9:10:35 AM5/27/14
to puppet...@googlegroups.com
Hi,

Actually we were using the "winpe.wim" which we created and not the one from the build-winpe powershell scripts.
After changing the winpe.wim the installation went fine.

Now we are able to successfully install Windows Server 2012 using iPXE to PXE boot using the "pxeboot.n12".

Thanks & Regards,
karthik

Daniel Pittman

unread,
May 27, 2014, 12:17:29 PM5/27/14
to puppet...@googlegroups.com
Ah, great. Sorry for the delayed response -- Monday was a holiday over here. :)

In order to advance to the next stage in the boot sequence the machine
you install needs to call back to the Razor server via HTTP and inform
it that it has completed work on stage one. If that doesn't happen we
assume that it failed for some reason, and try again.

The `build-winpe` script injects PowerShell code that will,
ultimately, make that call back to ensure that the process advances to
booting locally once the installer has run and is ready to start
working on local disk.

Karthikeyan S

unread,
Jun 3, 2014, 3:32:26 AM6/3/14
to puppet...@googlegroups.com
Got it. Thank you Daniel.
Reply all
Reply to author
Forward
0 new messages