This page lists all files and folders included in the Tiny PXE Server version 1.0.0.20 (dated 12/2/2017 (19:29)) download package (pxesrv.zip). The Tiny PXE Server executable (pxesrv.exe) forms only a small part of the download package (executable is only 929 KB) - the remainder of the download is made up of Network Bootstrap Programs, sample files, etc.
The following displays the directory structure. Files are shown in RED (with path in BLUE). Root directories are shown in GREEN. Click on the RED or GREEN links below for further information about each file/directory -
Files and folders in the pxesrv.zip package are listed in alphabetical order below -
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Sample batch file that can be used (along with a corresponding entry in config.ini (e.g. offline=C:\pxesrv\__offline.bat)) to execute commands when the Offline button is pressed in the Tiny PXE Server GUI.
Sample batch file that can be used (along with a corresponding entry in config.ini (e.g. online=C:\pxesrv\__online.bat)) to execute commands when the Online button is pressed in the Tiny PXE Server GUI.
Directory used for WinPE 2.*\3.*\4.0\5.* files. Copy the BCD store here. This is the default location for WinPE network boot files. If using the wimboot.ipxe script then boot.sdi will also need to be copied here.
PXELinux sub-menu loaded via the default menu file (Utilitaires de boot menu option). This is a sample menu. The following disk images can be loaded via this sub-menu (the disk images will need to be downloaded and added to the images directory) -
PXELinux sub-menu loaded via default > install.conf (Install CD's > install Centos menu options). Contains a sample menu for booting the CentOS Linux project.
Sample configuration file for use with pxesrv.exe. Can be used to preload settings - this is covered in more detail in the pxesrv Config section of this guide. The following has been copied from pxesrv-faq.xhtml -
PXELinux COM32 module. The following is from http://www.syslinux.org/.../chain.c32 -
PXELinux sub-menu loaded via default > install.conf (Install CD's > install Debian menu options). Contains a sample menu option for booting the Debian Linux project.
Empty directory. Debian Linux project files (linux and initrd.gz) can be copied here (to the \files\debian-installer\I386 directory) and booted via the debian.conf submenu.
The plain text boot menu loaded by Grub4dos. This is a sample file.
The plain text boot menu loaded by PXELinux. The majority of the menu options will load sub-menus contained in the menuconf directory. Menu options -
PXELinux sub-menu loaded via the default menu file. The following disk images can be loaded via this sub-menu (disk images will need to be downloaded and added to the \files\images\hdd\ directory - the directory \files\images\ exits, however the \hdd\ sub-directory will need to be created manually) -
PXELinux sub-menu loaded via default > livecds.conf (Live CDs > dsl menu options). Contains a sample menu for booting the Damn Small Linux Linux project.
PXELinux sub-menu loaded via default > install.conf (Install CD's > install Fedora menu options). Contains a sample menu for booting the Fedora Linux project.
Directory containing several PXE loaders including pxelinux.0. Assuming the PXE loader is loaded from this directory it will also be the tftp and http root directory.
Sample file used to restrict PXE boot to systems with a specified MAC addresses. The following has been copied from pxesrv-faq.xhtml -
PXELinux sub-menu loaded via the default menu file (Floppies menu option). The following disk images can be loaded via this sub-menu (disk images will need to be downloaded and added to the images directory) -
PXELinux sample menu containing an entry for installing FreeBSD.
PXELinux sub-menu loaded via the default menu file (gPXE menu option). This is a sample menu and includes the following options -
gPXE bootstrap loader. This version contains a range of native drivers and gives better performance than the UNDI version of gPXE, however it may not contain a native driver for client systems NIC.
.pxe builds are designed to be chainloaded. On loading, .pxe builds will unload the underlying UNDI and PXE code.
The following information is from the gPXE website (http://etherboot.org/wiki/index.php) -
gPXE project homepage - http://etherboot.org/wiki/start. Please note that gPXE is no longer in development and has been officially replaced with iPXE.
This build is similar to gpxe-1.0.1-gpxe.pxe - the only difference being that .kpxe builds will keep the underloading UNDI code loaded but will unload PXE.
The Universal Network Device Interface (UNDI) version of the gPXE bootstrap loader. This is a "light" version of gPXE with a generic driver that works on cards that have a vendor UNDI ROM - it uses UNDI code contained on the network card it was booted from (i.e. on the client system). UNDI is slower than using a native driver.
.pxe builds are designed to be chainloaded. On loading, .pxe builds will unload the underlying UNDI and PXE code.
See here for more information regarding gPXE.
gPXE bootstrap loader. This version contains a range of native drivers and gives better performance than the UNDI version of gPXE, however it may not contain a native driver for the network card on the client system.
.pxe builds are designed to be chainloaded. On loading, .pxe builds will unload the underlying UNDI and PXE code.
See here for more information regarding gPXE.
This build is similar to gpxe-1.0.1+-gpxe.pxe - the only difference being that .kpxe builds will keep the underloading UNDI code loaded but will unload PXE.
The linux kernel version of the gPXE bootstrap loader. This version can be loaded via SYSLINUX/LILO/GRUB.
See here for more information regarding gPXE.
Part of the PXELINUX package. gpxelinux.0 is similar to pxelinux.0 with the addition of http support - it can be used to download files using http on a local area network or over the internet.
Grub4dos boot loader. Will load the configuration file \menu.lst\default
A SYSLinux COM32 module - Hardware Detection Tool. The following is from http://www.syslinux.org/.../Hdt_(Hardware_Detection_Tool) -
Sample gPXE script. Can be specified as altfilename in config.ini.
Directory. A number of menu options will load disk images from this folder. The relevant disk images/files will need to be copied to this folder - refer to bootutil.conf and floppies.conf.
PXELinux sub-menu loaded via the default menu file (Install CD's menu option). This particularly menu contains options for loading additional submenus. Menu options -
iPXE bootstrap loader - for use with 32-bit UEFI Client systems booting in UEFI mode. iPXE version 1.0.0+ (30f9) is included in the Tiny PXE Server version 1.0.0.20 download package (dated 12/2/2017 (19:29)). See also ipxe-x86-64.efi
iPXE bootstrap loader - for use with 32-bit UEFI Client systems booting in UEFI mode. iPXE version 1.0.0+ (30f9) is included in the Tiny PXE Server version 1.0.0.20 download package (dated 12/2/2017 (19:29)). See also ipxe-snponly-x86-64.efi
iPXE supports booting from the following (NOTE - not all features may be supported in UEFI builds) -
iPXE website - http://ipxe.org/start
ipxe-snponly-x86-64.efi is an iPXE network boot program for use on systems with 64-bit UEFI firmware. SNP (Simple Network Protocol) builds are the UEFI equivalent of the UNDI driver used on BIOS systems - using generic code instead of a native driver for the Client NIC. SNP builds should be used on unsupported or misbehaving NICs. SNP is likely to be slower than using a native driver.
The Universal Network Device Interface (UNDI) version of the iPXE bootstrap loader - iPXE version 1.0.0+ (30f9) is included in Tiny PXE Server version 1.0.0.20 (dated 12/2/2017 (19:29)).
ipxe-undionly.kpxe is a "light" version of iPXE with a generic driver that works on cards that have a vendor UNDI ROM - it uses UNDI code contained on the network card it was booted from (i.e. on the client system). UNDI is slower than using a native driver.
.kpxe builds are designed to be chainloaded. On loading, .kpxe builds will keep the underloading UNDI code loaded but will unload PXE.
See here for more information regarding iPXE.
iPXE bootstrap loader - for use with 64-bit UEFI Client systems booting in UEFI mode. iPXE version 1.0.0+ (30f9) is included in the Tiny PXE Server version 1.0.0.20 download package (dated 12/2/2017 (19:29)).
Unlike the snponly versions of ipxe, this includes a full driver set with native drivers supporting a variety of NICs. If this build includes a native driver for the Client NIC then it's likely to be faster than using the snponly build.
PXELinux sub-menu loaded via the default menu file. This submenu contains two menu options for (chain)loading ipxe.lkrn - one will load menu.ipxe, the other will just load the ipxe.lkrn kernel without passing any parameters to it.
iPXE bootable iso file - contains (and automatically loads) ipxe.lkrn.
See here for more information regarding iPXE.
The linux kernel version of the iPXE bootstrap loader - iPXE version 1.0.0+ (30f9) is included in Tiny PXE Server version 1.0.0.20 (dated 12/2/2017 (19:29)).
ipxe.lkrn can be loaded via SYSLINUX/LILO/GRUB. It's also included in ipxe.iso.
See here for more information regarding iPXE.
iPXE bootstrap loader - iPXE version 1.0.0+ (30f9) is included in the Tiny PXE Server version 1.0.0.20 download package (dated 12/2/2017 (19:29)).
ipxe.pxe contains a range of native drivers and gives better performance than the UNDI version of iPXE, however it may not contain a native driver for the network card on the client system.
.pxe builds are designed to be chainloaded. On loading, .pxe builds will unload the underlying UNDI and PXE code.
See here for more information regarding iPXE.
Can be used to PXE boot a client system without native PXE boot support. Write this file to a USB device and boot it on a client system - the file needs to be written (i.e. using a dd type command), not just copied to the device.
Sample iPXE script with an example for booting from an iSCSI Target. Can be specified as altfilename in config.ini.
iPXE script. Sample script to load an ISO file via http - using memdisk. Thie file can be specified as altfilename in config.ini.
iPXE script. Sample script to load an ISO file using the SANBOOT command.
License for Tiny PXE Server.
PXELinux sub-menu loaded via the default menu file (Live CDs menu option). Contains a sample menu with options for booting a range of Linux Live distros.
PXELinux COM32 module. The following is from http://www.syslinux.org/.../Mboot.c32 -
Part of the SYSLINUX package. The following is from http://www.syslinux.org/.../MEMDISK -
PXELinux COM32 module. The following is from http://www.syslinux.org/.../menu.c32 -
Sample gPXE script. Can be specified as altfilename in config.ini.
iPXE sample menu with a range of options - many of which duplicate the PXELINUX menus included in the Tiny PXE Server download.
The default location for the Grub4dos configuration file - \files\menu.lst\default.
Directory containing sub-menus for the PXELinux boot loader - loaded via the Default menu file.
Sample file. When BINL is used, a request containing VID and PID information is sent to the server. The Tiny PXE Server includes BINL support, however the default behaviour is to parse driver inf files. Rename this file as nics.txt to overrule the built in inf parsing.
O
Empty directory. OpenSuse Linux project files (linux and initrd) can be copied here and booted via the suse.conf submenu.
PXELinux sub-menu loaded via the default menu file (Partition Tools menu option).
pxelinux.0 is the PXELINUX Network Bootstrap Program (NBP). The following is from http://www.syslinux.org/.../PXELINUX
PXELINUX version 4.06 is included in the download package - newer versions have issues with chainload compatibility with other boot loaders.
The default location for the PXELINUX configuration file - \files\pxelinux.cfg\default.
Sample gPXE script. Can be specified as altfilename in config.ini.
Preboot Execution Environment (PXE) Specification (Version 2.1) - 103 page .pdf document covering Intel's PXE Specification. A useful reference document.
Frequently Asked Questions - contains a range of examples for setting up the Tiny PXE Server to boot various Network Bootstrap Programs (and Windows XP installation via RIS, booting WinPE, etc). The instructions are a very brief how to that can be used as a prompt if you are familiar with PXE booting.
The Tiny PXE Server executable.
Changelog for the Tiny PXE Server package.
PXELinux COM32 module. The following is from http://www.syslinux.org/.../Reboot.c32 -
Used to reboot a client system.
PXELinux sub-menu loaded via the default menu file.
PXELinux COM32 module. The following is from http://www.syslinux.org/.../Sanboot.c32 -
Sample gPXE script. Can be specified as altfilename in config.ini.
PXELinux COM32 module. Can be used to boot Microsoft System Deployment Images (.SDI type files) - SDI files are often used in Windows Embedded and can be used to boot WinPE 1.*.
Empty directory. May be used if booting WinPE - depending on the settings in the BCD store located in the boot directory - this is the default location for the WinPE .wim file if the BCD store contained in the Microsoft WAIK/ADK is used.
PXELinux sub-menu loaded via default > install.conf (Install CD's > install OpenSuse menu options). Contains a sample menu for booting the OpenSuse Linux project.
syslog daemon used for logging Tiny PXE Server output.
PXELinux sub-menu loaded via the default menu file.
PXELinux sub-menu loaded via default > install.conf (Install CD's > install ubuntu menu options). Contains a sample menu for booting the Ubuntu Linux project.
Empty directory. Ubuntu Linux project files (linux and initrd.gz) can be copied here (to the \files\ubuntu-installer\I386 directory) and booted via the ubuntu.conf submenu.
Text file containing build/version details.
wimboot is a module loaded by iPXE that can be used to boot WinPE (.wim) images. The following is from http://ipxe.org/wimboot -
wimboot version 2.5.2 is included in the Tiny PXE Server version 1.0.0.20 (dated 12/2/2017 (19:29)) download package.
iPXE script used in conjunction with wimboot (see http://ipxe.org/wimboot).
See also winpe4.ipxe.
WinNSFd is a free open source Network File System (NFS) server for Windows.
Sample file for loading BARTXPE.ISO (in path \images\BARTXPE.ISO). Used for BartPE builds with the Windows 2003 SP1 ramdisk drivers integrated.
Sample file used to automate the installation of Windows NT 5.* systems (Windows 2000/XP/2003) via Remote Installation Service (RIS).
Sample iPXE script. Can be specified as altfilename in config.ini.
This script is used to load the wimboot kernel (see http://ipxe.org/wimboot) - loading WinPE. See also wimboot.ipxe.
Document date - 28th February 2017(DRAFT)