- mylinuxguy
- Posts: 2
- Joined: Fri Aug 19, 2022 11:31 pm
PXE boot and the pxelinux.cfg directory
I know that the PI supports network booting... I actually have that working, and I am trying to fine-tune my setup and see if there are other options I need to look at.
I know that for 'Real' PXE boot the PXE server can use some boot logic and that is setup in the pxelinux.cfg directory on the PXE server. I can't seem to get the pxelinux.cfg/default ( or anything in the pxelinux.cfg directory ) to be used when booting the PI. Is this something the PI just won't use or do I have something configured incorrectly?
I have a tftp directory setup and my PI pulls files from it when it network boots.... I think that that pxelinux.cfg directory should be called if its setup and that is where it gets fuzzy.
Should I give up on getting advanced PXE booting with the pxelinux.cfg directory or does someone KNOW that it works?
Thanks - jack
I know that for 'Real' PXE boot the PXE server can use some boot logic and that is setup in the pxelinux.cfg directory on the PXE server. I can't seem to get the pxelinux.cfg/default ( or anything in the pxelinux.cfg directory ) to be used when booting the PI. Is this something the PI just won't use or do I have something configured incorrectly?
I have a tftp directory setup and my PI pulls files from it when it network boots.... I think that that pxelinux.cfg directory should be called if its setup and that is where it gets fuzzy.
Should I give up on getting advanced PXE booting with the pxelinux.cfg directory or does someone KNOW that it works?
Thanks - jack
Re: PXE boot and the pxelinux.cfg directory
PXELINUX is the name of a specific bootloader, part of the SYSLINUX family.
The closest thing to pxelinux.cfg for the standard Raspberry Pi firmware bootloader is config.txt. You cannot present the user with a boot menu, but you can do simpler things like checking GPIOs before you decide which kernel and cmdline and rootfs to load.
The closest thing to pxelinux.cfg for the standard Raspberry Pi firmware bootloader is config.txt. You cannot present the user with a boot menu, but you can do simpler things like checking GPIOs before you decide which kernel and cmdline and rootfs to load.
Re: PXE boot and the pxelinux.cfg directory
PXE is x86[_64]-specific, and I do wish people like RPL would stop using it as a catch-all term for network booting. You should go and read the documentation -- there are links around; I don't have one to hand -- and you should find your questions answered there.mylinuxguy wrote: ↑Tue Nov 11, 2025 9:47 pmI know that the PI supports network booting... I actually have that working, and I am trying to fine-tune my setup and see if there are other options I need to look at.
I know that for 'Real' PXE boot the PXE server can use some boot logic and that is setup in the pxelinux.cfg directory on the PXE server. I can't seem to get the pxelinux.cfg/default ( or anything in the pxelinux.cfg directory ) to be used when booting the PI. Is this something the PI just won't use or do I have something configured incorrectly?
pxelinux.cfg is parsed by the x86 Linux PXE bootloader on the client, not the server. The Pi won't touch it.
As it is apparently board policy to disallow any criticism of anything, as it appears to criticise something is to criticise all the users of that something, I will no longer be commenting in threads which are not directly relevant to my uses of the Pi.
Re: PXE boot and the pxelinux.cfg directory
The 2006 RFC statesdickon wrote: ↑Thu Nov 13, 2025 4:47 pmPXE is x86[_64]-specific, and I do wish people like RPL would stop using it as a catch-all term for network booting. You should go and read the documentation -- there are links around; I don't have one to hand -- and you should find your questions answered there.mylinuxguy wrote: ↑Tue Nov 11, 2025 9:47 pmI know that the PI supports network booting... I actually have that working, and I am trying to fine-tune my setup and see if there are other options I need to look at.
I know that for 'Real' PXE boot the PXE server can use some boot logic and that is setup in the pxelinux.cfg directory on the PXE server. I can't seem to get the pxelinux.cfg/default ( or anything in the pxelinux.cfg directory ) to be used when booting the PI. Is this something the PI just won't use or do I have something configured incorrectly?
pxelinux.cfg is parsed by the x86 Linux PXE bootloader on the client, not the server. The Pi won't touch it.
Code: Select all
Type Architecture Name
---- -----------------
0 Intel x86PC
1 NEC/PC98
2 EFI Itanium
3 DEC Alpha
4 Arc x86
5 Intel Lean Client
6 EFI IA32
7 EFI BC
8 EFI Xscale
9 EFI x86-64
Notably missing is ARM. My recollection is type 3 was repurposed, or maybe not.
In my opinion PXE is out of date and insecure as usually implemented. What I'd like to see--maybe for the new products thread--is an open source loader that could be flashed to an SD card and used to create secure iPXE over https as well as grub-like functionality.
Re: PXE boot and the pxelinux.cfg directory
AFAICT, the only non-x86 or non-Intel in there are the Itanic (dead), and the DEC Alpha (long dead). Can't remember what the Xscale was; might have been Intel's Arm thing.
But the Pi is *not* a PXE client. It doesn't behave like one, and calling generic network booting 'PXE' is confusing, as people google / ChatGPT it and get confused. We've had countless threads on this on these forums over the years for this to be abundantly obvious.
But the Pi is *not* a PXE client. It doesn't behave like one, and calling generic network booting 'PXE' is confusing, as people google / ChatGPT it and get confused. We've had countless threads on this on these forums over the years for this to be abundantly obvious.
As it is apparently board policy to disallow any criticism of anything, as it appears to criticise something is to criticise all the users of that something, I will no longer be commenting in threads which are not directly relevant to my uses of the Pi.
Jump to
- Community
- General discussion
- Announcements
- Other languages
- Deutsch
- Español
- Français
- Italiano
- Nederlands
- 日本語
- Polski
- Português
- Русский
- Türkçe
- User groups and events
- Raspberry Pi Official Magazine
- Using the Raspberry Pi
- Beginners
- Troubleshooting
- Advanced users
- Assistive technology and accessibility
- Education
- Picademy
- Teaching and learning resources
- Staffroom, classroom and projects
- Astro Pi
- Mathematica
- High Altitude Balloon
- Weather station
- Programming
- C/C++
- Java
- Python
- Scratch
- Other programming languages
- Windows 10 for IoT
- Wolfram Language
- Bare metal, Assembly language
- Graphics programming
- OpenGLES
- OpenVG
- OpenMAX
- General programming discussion
- Projects
- Networking and servers
- Automation, sensing and robotics
- Graphics, sound and multimedia
- Other projects
- Media centres
- Gaming
- AIY Projects
- Hardware and peripherals
- Camera board
- Compute Module
- Official Display
- HATs and other add-ons
- Device Tree
- Interfacing (DSI, CSI, I2C, etc.)
- Keyboard computers (400, 500, 500+)
- Raspberry Pi Pico
- General
- SDK
- MicroPython
- Other RP2040 boards
- Zephyr
- Rust
- AI Accelerator
- AI Camera - IMX500
- Hailo
- Software
- Raspberry Pi OS
- Raspberry Pi Connect
- Raspberry Pi Desktop for PC and Mac
- Beta testing
- Other
- Android
- Debian
- FreeBSD
- Gentoo
- Linux Kernel
- NetBSD
- openSUSE
- Plan 9
- Puppy
- Arch
- Pidora / Fedora
- RISCOS
- Ubuntu
- Ye Olde Pi Shoppe
- For sale
- Wanted
- Off topic
- Off topic discussion