UEFI PXE Netboot, with preseeded configuration

The following tutorial (under the same GPL terms as the software) explains the steps needed to install Ubuntu via netboot. This is for AMD64 architecture, please exchange the files with i386 where appropriate for 32-bit installation

Step 1: Get the files

  1. Download the UEFI signed grub image into /srv/tftp/: http://archive.ubuntu.com/ubuntu/dists/trusty/main/uefi/grub2-amd64/current/grubnetx64.efi.signed
  2. Download the correct netboot.tar.gz archive (navigate to the correct one!): http://cdimage.ubuntu.com/netboot/
  3. Extract netboot.tar.gz into /srv/tftp/

Step 2: Configure UEFI Grub:

  1. Create the file /srv/tftp/grub/grub.cfg with the following content (you will need an HTTP server for the preseed file):
menuentry "Install Mercian Ubuntu" {
set gfxpayload=keep
linux /ubuntu-installer/amd64/linux gfxpayload=800x600x16,800x600 -- auto=true url=http://YOUR_PRESEED_SERVER/preseed.cfg quiet
initrd /ubuntu-installer/amd64/initrd.gz

Step 3: Install TFTP and DHCP server (for simplicity, dnsmasq is used here)

  1. Install dnsmasq: sudo apt-get install dnsmasq
  2. Configure dnsmasq add these lines to /etc/dnsmasq.conf

Reload dnsmasq (sudo service dnsmasq restart)