IPXE: Difference between revisions

From Leo's Notes
This page was last edited on 20 September 2015, at 23:13.
No edit summary
m text formatting
Line 1: Line 1:
iPXE is a PXE boot firmware which can be used to PXE boot systems that may not have support. iPXE supersedes the older and no longer actively maintained gPXE boot firmware.


== Building ==
The following script will build iPXE with an embedded script which automatically boots from a HTTP resource.
{{Highlight|lang=bash|code=
git clone git://git.ipxe.org/ipxe.git
cd git


== Building ==
cat <<EOF > arch.ipxe
To build iPXE with an embedded script:
#!ipxe
git clone git://git.ipxe.org/ipxe.git
dhcp
cd git
set 209:string cfg/arch.cfg
cat <<EOF > arch.ipxe
set 210:string http://linbuild.cs.ucalgary.ca/archlinux/boot/
#!ipxe
chain ${210:string}pxelinux.0
dhcp
EOF
set 209:string cfg/arch.cfg
set 210:string http://linbuild.cs.ucalgary.ca/archlinux/boot/
chain ${210:string}pxelinux.0
EOF
make bin/ipxe.lkrn EMBED=arch.ipxe


make bin/ipxe.lkrn EMBED=arch.ipxe
}}


== Troubleshooting ==
== Troubleshooting ==
<syntaxhighlight lang="text">
If you get the following error while building:
  [VERSION] bin/version.udionly.kpxe.o
{{Highlight|lang=text|code=
  [LD] bin/udionly.kpxe.tmp
[VERSION] bin/version.udionly.kpxe.o
[LD] bin/udionly.kpxe.tmp
--defsym:2: undefined symbol `obj_udionly' referenced in expression
--defsym:2: undefined symbol `obj_udionly' referenced in expression
make: *** [bin/udionly.kpxe.tmp] Error 1
make: *** [bin/udionly.kpxe.tmp] Error 1
rm bin/version.udionly.kpxe.o
rm bin/version.udionly.kpxe.o
</syntaxhighlight>
}}


If you are getting this error, install the <code>syslinux-devel</code> package.
Install the <code>syslinux-devel</code> package.


[[Category:Linux]]
[[Category:Linux]]
{{Navbox Linux}}
{{Navbox Linux}}

Revision as of 23:13, 20 September 2015

iPXE is a PXE boot firmware which can be used to PXE boot systems that may not have support. iPXE supersedes the older and no longer actively maintained gPXE boot firmware.

Building

The following script will build iPXE with an embedded script which automatically boots from a HTTP resource.

git clone git://git.ipxe.org/ipxe.git
cd git

cat <<EOF > arch.ipxe
#!ipxe
dhcp
set 209:string cfg/arch.cfg
set 210:string http://linbuild.cs.ucalgary.ca/archlinux/boot/
chain ${210:string}pxelinux.0
EOF

make bin/ipxe.lkrn EMBED=arch.ipxe

Troubleshooting

If you get the following error while building:

[VERSION] bin/version.udionly.kpxe.o
[LD] bin/udionly.kpxe.tmp
--defsym:2: undefined symbol `obj_udionly' referenced in expression
make: *** [bin/udionly.kpxe.tmp] Error 1
rm bin/version.udionly.kpxe.o

Install the syslinux-devel package.