netboot.xyz
Your favorite operating systems in one place. A network-based bootable operating system installer based on iPXE.
A network booting tool that lets you install any of dozens of operating systems by picking from a menu at machine startup, with no USB drive or ISO download required.
netboot.xyz is a tool that lets you start up (boot) a computer into an operating system installer over the network, without needing to first download an ISO file and write it to a USB drive. Instead, the computer connects to netboot.xyz during startup and shows a menu where you can pick which operating system you want to install.
The underlying technology is called iPXE, which is a way to tell a computer to look for boot instructions from the network rather than from a local disk. When a computer starts and iPXE is active, it can load the netboot.xyz menu, which then lets you choose from a range of operating systems. This works within the BIOS or firmware interface on the computer.
The project provides bootloader files in several formats to cover different hardware setups. There are ISO files for use with virtual machines or remote management interfaces, USB disk images for writing to a thumb drive, kernel files for loading through an existing bootloader like GRUB, and DHCP boot files that a network server can send to computers automatically when they start. There are separate versions for older BIOS-based machines, modern UEFI firmware, ARM64 processors, and the Raspberry Pi 4.
For people who want to run their own copy of the service rather than using the public hosted version, the repository includes scripts to build and deploy everything yourself. The build system is based on Ansible, a configuration management tool. There is also a Docker option for building locally. Settings can be overridden through a configuration file to change things like where the boot files are served from.
Full documentation, a list of supported operating systems, and guides for different booting methods are available on the project's website.
Where it fits
- Boot into any of dozens of Linux or other OS installers over the network without writing a USB drive
- Configure a DHCP server to automatically serve the netboot.xyz menu to all new machines on a network
- Run a self-hosted copy of netboot.xyz with custom boot menu entries and your own boot file server
- Boot a Raspberry Pi 4 or ARM64 machine over the network using the dedicated ARM image