diff --git a/README.md b/README.md index bfba2fd..3c7dd6a 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ ## Overview -All needed files to set up a PXE server. +All needed files to set up a PXE server for both standard bios and UEFI (32b and 64b). ## Description @@ -20,24 +20,48 @@ Use some bootloaders files provide by : * `pxelinux` debian package : * gpxelinux.0 * pxelinux.0 + * `syslinux-efi` debian package : + * syslinux.efi * `syslinux-common` debian package : * chain.c32 * ldlinux.c32 + * ldlinux.e32 + * ldlinux.e64 * libcom32.c32 * libutil.c32 * menu.c32 * reboot.c32 * vesamenu.c32 -To get those files from the packages of your repositories : +* To get those files from the packages of your repositories : + ``` sh mkdir -p temp_pxe_files cd temp_pxe_files -aptitude download pxelinux syslinux-common +mkdir bios efi32 efi64 +aptitude pxelinux syslinux-common syslinux-efi ar p pxelinux*.deb data.tar.xz | tar xJ -C . --strip-components=4 ./usr/lib/PXELINUX/{g,}pxelinux.0 -ar p syslinux-common*.deb data.tar.xz | tar xJ -C . --strip-components=6 ./usr/lib/syslinux/modules/bios/{chain,ldlinux,libcom32,libutil,menu,reboot,vesamenu}.c32 +ar p pxelinux*.deb data.tar.xz | tar xJ -C bios/ --strip-components=4 ./usr/lib/PXELINUX/{g,}pxelinux.0 +ar p syslinux-efi*.deb data.tar.xz | tar xJ -C efi32/ --strip-components=5 ./usr/lib/SYSLINUX.EFI/efi32/syslinux.efi +ar p syslinux-efi*.deb data.tar.xz | tar xJ -C efi64/ --strip-components=5 ./usr/lib/SYSLINUX.EFI/efi64/syslinux.efi +ar p syslinux-common*.deb data.tar.xz | tar xJ -C . --strip-components=6 ./usr/lib/syslinux/modules/bios/{chain,ldlinux,libcom32,libutil,menu,reboot,vesamenu}.* +ar p syslinux-common*.deb data.tar.xz | tar xJ -C bios/ --strip-components=6 ./usr/lib/syslinux/modules/bios/{chain,ldlinux,libcom32,libutil,menu,reboot,vesamenu}.* +ar p syslinux-common*.deb data.tar.xz | tar xJ -C efi32/ --strip-components=6 ./usr/lib/syslinux/modules/efi32/{chain.c32,ldlinux.e32,libcom32.c32,libutil.c32,menu.c32,reboot.c32,vesamenu.c32} +ar p syslinux-common*.deb data.tar.xz | tar xJ -C efi64/ --strip-components=6 ./usr/lib/syslinux/modules/efi64/{chain.c32,ldlinux.e64,libcom32.c32,libutil.c32,menu.c32,reboot.c32,vesamenu.c32} ``` -The MD5 checksum can mismatch between the files from this repo and those from Debian's packages. + + * The MD5 checksum can mismatch between the files from this repo and those from Debian's packages. +* Then create symlinks to avoid to duplicate files : + +``` sh +for DIR in bios efi32 efi64; do +ln -s ../config "${DIR}" +ln -s ../installer "${DIR}" +ln -s ../preseed "${DIR}" +ln -s ../pxelinux.cfg "${DIR}" +done +``` + ### Configuration files Contains the files which defines the PXE menu. The [first one][main menu.cfg] will : diff --git a/bios/chain.c32 b/bios/chain.c32 new file mode 100644 index 0000000..d9adffe Binary files /dev/null and b/bios/chain.c32 differ diff --git a/bios/config b/bios/config new file mode 120000 index 0000000..3ca249e --- /dev/null +++ b/bios/config @@ -0,0 +1 @@ +../config \ No newline at end of file diff --git a/bios/gpxelinux.0 b/bios/gpxelinux.0 new file mode 100644 index 0000000..f7f9269 Binary files /dev/null and b/bios/gpxelinux.0 differ diff --git a/bios/installer b/bios/installer new file mode 120000 index 0000000..ab9d4b9 --- /dev/null +++ b/bios/installer @@ -0,0 +1 @@ +../installer \ No newline at end of file diff --git a/bios/ldlinux.c32 b/bios/ldlinux.c32 new file mode 100644 index 0000000..5424644 Binary files /dev/null and b/bios/ldlinux.c32 differ diff --git a/bios/libcom32.c32 b/bios/libcom32.c32 new file mode 100644 index 0000000..4f1efab Binary files /dev/null and b/bios/libcom32.c32 differ diff --git a/bios/libutil.c32 b/bios/libutil.c32 new file mode 100644 index 0000000..7c99ae5 Binary files /dev/null and b/bios/libutil.c32 differ diff --git a/bios/menu.c32 b/bios/menu.c32 new file mode 100644 index 0000000..7e1179c Binary files /dev/null and b/bios/menu.c32 differ diff --git a/bios/preseed b/bios/preseed new file mode 120000 index 0000000..1032ed0 --- /dev/null +++ b/bios/preseed @@ -0,0 +1 @@ +../preseed \ No newline at end of file diff --git a/bios/pxelinux.0 b/bios/pxelinux.0 new file mode 100644 index 0000000..95381e0 Binary files /dev/null and b/bios/pxelinux.0 differ diff --git a/bios/pxelinux.cfg b/bios/pxelinux.cfg new file mode 120000 index 0000000..538cb33 --- /dev/null +++ b/bios/pxelinux.cfg @@ -0,0 +1 @@ +../pxelinux.cfg \ No newline at end of file diff --git a/bios/reboot.c32 b/bios/reboot.c32 new file mode 100644 index 0000000..bffd7aa Binary files /dev/null and b/bios/reboot.c32 differ diff --git a/bios/vesamenu.c32 b/bios/vesamenu.c32 new file mode 100644 index 0000000..9b67663 Binary files /dev/null and b/bios/vesamenu.c32 differ diff --git a/efi32/chain.c32 b/efi32/chain.c32 new file mode 100644 index 0000000..9e41e75 Binary files /dev/null and b/efi32/chain.c32 differ diff --git a/efi32/config b/efi32/config new file mode 120000 index 0000000..3ca249e --- /dev/null +++ b/efi32/config @@ -0,0 +1 @@ +../config \ No newline at end of file diff --git a/efi32/installer b/efi32/installer new file mode 120000 index 0000000..ab9d4b9 --- /dev/null +++ b/efi32/installer @@ -0,0 +1 @@ +../installer \ No newline at end of file diff --git a/efi32/ldlinux.e32 b/efi32/ldlinux.e32 new file mode 100644 index 0000000..447e08e Binary files /dev/null and b/efi32/ldlinux.e32 differ diff --git a/efi32/libcom32.c32 b/efi32/libcom32.c32 new file mode 100644 index 0000000..7713f1a Binary files /dev/null and b/efi32/libcom32.c32 differ diff --git a/efi32/libutil.c32 b/efi32/libutil.c32 new file mode 100644 index 0000000..a0312ec Binary files /dev/null and b/efi32/libutil.c32 differ diff --git a/efi32/menu.c32 b/efi32/menu.c32 new file mode 100644 index 0000000..997334e Binary files /dev/null and b/efi32/menu.c32 differ diff --git a/efi32/preseed b/efi32/preseed new file mode 120000 index 0000000..1032ed0 --- /dev/null +++ b/efi32/preseed @@ -0,0 +1 @@ +../preseed \ No newline at end of file diff --git a/efi32/pxelinux.cfg b/efi32/pxelinux.cfg new file mode 120000 index 0000000..538cb33 --- /dev/null +++ b/efi32/pxelinux.cfg @@ -0,0 +1 @@ +../pxelinux.cfg \ No newline at end of file diff --git a/efi32/reboot.c32 b/efi32/reboot.c32 new file mode 100644 index 0000000..7784b2f Binary files /dev/null and b/efi32/reboot.c32 differ diff --git a/efi32/syslinux.efi b/efi32/syslinux.efi new file mode 100644 index 0000000..5715fcb Binary files /dev/null and b/efi32/syslinux.efi differ diff --git a/efi32/vesamenu.c32 b/efi32/vesamenu.c32 new file mode 100644 index 0000000..2ec4081 Binary files /dev/null and b/efi32/vesamenu.c32 differ diff --git a/efi64/chain.c32 b/efi64/chain.c32 new file mode 100644 index 0000000..0d818c3 Binary files /dev/null and b/efi64/chain.c32 differ diff --git a/efi64/config b/efi64/config new file mode 120000 index 0000000..3ca249e --- /dev/null +++ b/efi64/config @@ -0,0 +1 @@ +../config \ No newline at end of file diff --git a/efi64/installer b/efi64/installer new file mode 120000 index 0000000..ab9d4b9 --- /dev/null +++ b/efi64/installer @@ -0,0 +1 @@ +../installer \ No newline at end of file diff --git a/efi64/ldlinux.e64 b/efi64/ldlinux.e64 new file mode 100644 index 0000000..7acf65d Binary files /dev/null and b/efi64/ldlinux.e64 differ diff --git a/efi64/libcom32.c32 b/efi64/libcom32.c32 new file mode 100644 index 0000000..f4e29e2 Binary files /dev/null and b/efi64/libcom32.c32 differ diff --git a/efi64/libutil.c32 b/efi64/libutil.c32 new file mode 100644 index 0000000..53a844b Binary files /dev/null and b/efi64/libutil.c32 differ diff --git a/efi64/menu.c32 b/efi64/menu.c32 new file mode 100644 index 0000000..3865582 Binary files /dev/null and b/efi64/menu.c32 differ diff --git a/efi64/preseed b/efi64/preseed new file mode 120000 index 0000000..1032ed0 --- /dev/null +++ b/efi64/preseed @@ -0,0 +1 @@ +../preseed \ No newline at end of file diff --git a/efi64/pxelinux.cfg b/efi64/pxelinux.cfg new file mode 120000 index 0000000..538cb33 --- /dev/null +++ b/efi64/pxelinux.cfg @@ -0,0 +1 @@ +../pxelinux.cfg \ No newline at end of file diff --git a/efi64/reboot.c32 b/efi64/reboot.c32 new file mode 100644 index 0000000..f7cb849 Binary files /dev/null and b/efi64/reboot.c32 differ diff --git a/efi64/syslinux.efi b/efi64/syslinux.efi new file mode 100644 index 0000000..da35e52 Binary files /dev/null and b/efi64/syslinux.efi differ diff --git a/efi64/vesamenu.c32 b/efi64/vesamenu.c32 new file mode 100644 index 0000000..fbf53dd Binary files /dev/null and b/efi64/vesamenu.c32 differ