[ipxe-devel] adding command line function to ipxe - extend ipxe

Robin Smidsrød robin at smidsrod.no
Sun Apr 22 12:37:56 UTC 2012


If the Android installer is anything like another Linux distribution, it
boots with a kernel+initrd, which in turn contains all the required
files to bootstrap the installer. If it does, you should be able to boot
Android with an iPXE script similar to this, named android_installer.ipxe:

#!ipxe

kernel http://my.boot.server/path/to/android/installer/kernel
initrd http://my.boot.server/path/to/android/installer/initrd
imgargs kernel whatever kernel cmdline params required here
boot

You create a text file like this somewhere on a webserver (or TFTP
server if you so prefer).

If you want to boot that file from a PXE-enabled boot ROM you need to
set up you DHCP server to give out the right info, namely the "filename"
option in your DHCP server, somewhat like this for ISC DHCPD:

if exists user-class and option user-class = "iPXE" {
      filename "http://my.boot.server/android_installer.ipxe";
} else {
      filename "undionly.kpxe";
}

This is called "chainloading", and is explained here:
http://ipxe.org/howto/chainloading.

Starting up iPXE on the Android device might be a bit tricky if it
doesn't have a PXE-supported option ROM, but if it supports booting from
USB you should be able to put iPXE on a bootable USB stick by following
the instructions here: http://ipxe.org/download

Once you've booted the USB stick you need to press Ctrl-B and type in
the following commands:

dhcp
chain http://my.boot.server/android_installer.ipxe

This of course only works on x86-compatible hardware, as iPXE does not
support ARM.

Hope this helps. Please do tell us if this works for you.

-- Robin

On 21.04.2012 22:25, Levy, O wrote:
> Thanks for your reply. I have to be able to install android(x86) directly from ipxe and I'm not sure how; any thoughts?
> I thought if I add "install" command to ipxe then I can load the image, then its installer.
> 
> -----Original Message-----
> From: ipxe-devel-bounces at lists.ipxe.org [mailto:ipxe-devel-bounces at lists.ipxe.org] On Behalf Of Robin Smidsrød
> Sent: Tuesday, April 10, 2012 2:28 AM
> To: ipxe-devel at lists.ipxe.org
> Subject: Re: [ipxe-devel] adding command line function to ipxe - extend ipxe
> 
> On 09.04.2012 22:14, Levy, O wrote:
>> I’d like to extend ipxe command line, local copy, to enable for 
>> example android install on ipxe client.
>>
>> What would be the best way to add command line function.
> 
> Why would you need to extend iPXE to boot Android? Isn't Android started by booting a Linux kernel? If so, I don't see why Android couldn't be booted in the same way as any other Linux OS.
> 
> Could you please describe a bit more in detail how you're planning to boot Android over the network? I'm personally interested in being able to boot Android over the network on x86.
> 
> Or are you trying to boot an ARM device over the network?
> 
> -- Robin
> _______________________________________________
> ipxe-devel mailing list
> ipxe-devel at lists.ipxe.org
> https://lists.ipxe.org/mailman/listinfo/ipxe-devel




More information about the ipxe-devel mailing list