Installing a Workstation Image Using PXE: A Step‑by‑Step Guide (Version 6.2)
PXE (Preboot Execution Environment) lets you boot a computer over the network, download a boot image, and install an operating system without any local media. Version 6.But 2 of the PXE deployment stack introduces new features such as improved DHCP lease handling, support for UEFI Secure Boot, and streamlined image cataloging. Here's the thing — in enterprise or educational settings, PXE is indispensable for deploying identical workstation images to dozens or hundreds of machines quickly and reliably. Below is a full breakdown covering everything from prerequisites to troubleshooting.
Introduction
When a campus lab or corporate office needs to refresh hundreds of workstations, manually installing each machine is a logistical nightmare. PXE automates the process, allowing a single image to be delivered to all target PCs over the network. The key components involved are:
- DHCP server – assigns an IP address and points the client to the TFTP server.
- TFTP server – hosts the boot loader and kernel files.
- HTTP/HTTPS server – delivers the large OS image (ISO, VHD, or compressed archive).
- PXE boot loader – such as iPXE or Syslinux, which initiates the download sequence.
- Image repository – organized storage of workstation snapshots.
Version 6.2 brings tighter integration between the TFTP and HTTP servers, automatic fallback to HTTP if TFTP fails, and a new command‑line utility (pxe-deploy) that simplifies image cataloging Most people skip this — try not to..
Prerequisites
| Item | Minimum Requirement | Notes |
|---|---|---|
| Network | 1 Gbps LAN segment | PXE traffic can be heavy; consider VLANs. Also, |
| DHCP | Supports PXE options 66 & 67 | Option 66: TFTP server IP; Option 67: boot filename. |
| TFTP | Supports large file transfer (≥ 512 MB) | Use tftpd-hpa or atftpd. Because of that, |
| HTTP/HTTPS | Supports gzip and range requests | Recommended: Apache 2. 4 or Nginx. |
| Server OS | Linux x86_64 | Most PXE stacks run on Ubuntu, CentOS, or Debian. On the flip side, |
| Workstation Image | ISO or VHDX | Prefer compressed formats (e. That's why g. , 7z, tar.Now, gz). |
| Security | UEFI Secure Boot enabled on clients | If using signed images, sign them with your CA. |
Step 1: Configure the DHCP Server
- Enable PXE options
# Example for ISC DHCP option bootfile-name "pxelinux.0"; option vendor-class-identifier "PXEClient"; next-server 192.168.10.10; # IP of TFTP server - Create a scope that includes the network segment where the workstations reside.
- Restart DHCP:
sudo systemctl restart isc-dhcp-server
Tip: Verify that clients receive the correct bootfile-name by checking the DHCP logs (/var/log/syslog or /var/log/dhcpd.log) Surprisingly effective..
Step 2: Set Up the TFTP Server
- Install a TFTP daemon:
sudo apt-get install tftpd-hpa - Configure
/etc/default/tftpd-hpa:TFTP_USERNAME="tftp" TFTP_DIRECTORY="/var/lib/tftpboot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure" - Create the boot directory and copy the boot loader:
sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/ - Restart the service:
sudo systemctl restart tftpd-hpa
Step 3: Prepare the HTTP Server
- Install Apache or Nginx:
sudo apt-get install apache2 - Place the workstation image in
/var/www/html/images/.
Example:workstation-6.2.iso. - Set permissions so the web server can read the file:
sudo chown -R www-data:www-data /var/www/html/images - Enable compression to reduce bandwidth:
AddOutputFilterByType DEFLATE application/octet-stream
Step 4: Create the PXE Boot Menu
- Edit
/var/lib/tftpboot/pxelinux.cfg/default:DEFAULT menu.c32 PROMPT 0 TIMEOUT 300 MENU TITLE PXE Boot Menu LABEL workstation-6.2 MENU LABEL Install Workstation 6.2 KERNEL vmlinuz APPEND initrd=initrd.img boot=network netboot=1 ip=dhcp - Download the kernel and initrd for the target OS and place them in the TFTP root.
Step 5: Deploy the Image Using pxe-deploy
Version 6.2 introduces pxe-deploy, a command‑line utility that automates the cataloging and distribution process.
sudo pxe-deploy create --name "Workstation 6.2" \
--image /var/www/html/images/workstation-6.2.iso \
--tftp /var/lib/tftpboot \
--http http://192.168.10.20/images/ \
--description "Standard workstation image for lab PCs"
The command performs the following:
- Generates a unique image ID and updates the PXE menu automatically.
- Creates a checksum (SHA256) for integrity verification.
- Adds a fallback entry in case the HTTP server is unreachable.
After running, check /var/lib/tftpboot/pxelinux.cfg/default to confirm the new menu item appears.
Step 6: Boot a Client Machine
- Power on the target workstation and press the key to enter the BIOS/UEFI boot menu (often F12, Esc, or Del).
- Select Network Boot (PXE).
The client will request an IP, receive the boot file, and load the PXE menu. - Choose “Install Workstation 6.2” from the menu.
The boot loader will download the kernel, initrd, and the ISO via HTTP. - Follow the on‑screen installer prompts.
The installer can be scripted with kickstart or preseed files to automate configuration.
Scientific Explanation: How PXE Works
- DHCP Discovery – The client broadcasts a DHCPDISCOVER packet.
The server replies with an IP address and PXE options (TFTP server, boot file). - TFTP Transfer – The client fetches
pxelinux.0(oripxe.iso) via TFTP.
TFTP is lightweight but limited to 512‑byte blocks; hence the need for a fast LAN. - Boot Loader Execution –
pxelinux.0runs in the BIOS environment, reads the menu, and loads the kernel/initrd. - HTTP/HTTPS Fetch – The kernel initiates a network connection to the HTTP server to pull the large OS image using range requests for efficiency.
- Installation – The installer writes the image to the local disk, then reboots into the new system.
FAQ
| Question | Answer |
|---|---|
| **Can PXE boot UEFI systems with Secure Boot?That's why | |
| **Is there a way to verify the image integrity? Also, | |
| **How large can the image be? | |
| **What if the TFTP server fails?That said, ** | Yes, if the boot loader and image are signed with a key trusted by the firmware. ** |
| Can I deploy different images to different groups? | Version 6.** |
Conclusion
Deploying a workstation image via PXE streamlines large‑scale installations, reduces manual effort, and ensures consistency across all machines. With version 6.2’s enhanced tooling—especially the pxe-deploy utility—administrators can manage image catalogs, automate menu generation, and incorporate secure boot support with minimal overhead. By following the steps above, you’ll set up a reliable PXE deployment environment that scales effortlessly as your organization grows.
Advancing your network infrastructure with PXE booting offers a powerful way to streamline workstation deployments across enterprise environments. By guiding the client through the boot menu and selecting the PXE option, you enable rapid provisioning and maintain uniform configurations. Understanding the underlying mechanics—such as DHCP discovery, TFTP file transfer, and the bootloader’s execution—ensures smoother integration and minimizes common pitfalls. This method not only accelerates setup but also enhances security when paired with tools like Secure Boot and checksum verification. As you implement these procedures, remember that consistency and automation are key to long-term efficiency. Embrace PXE as a strategic asset for scalable IT operations, and you’ll find managing complex networks significantly more manageable. Conclusion: Leveraging PXE booting effectively empowers administrators to deploy standardized systems swiftly while upholding reliability and security standards Most people skip this — try not to..