- Download the iso, extract the files
/casper/initrd
and/casper/vmlinuz
, place them alongside the iso so they can be served over the network. In my case, I use nginx and thebase
:http://pi.nas.home:8888/ubuntu/
- create and serve the metadata, for example:
http://pi.nas.home:8888/ubuntu/metadata
; create theuser-data
and the (empty)meta-data
file - Add a MAC-specific
.ipxe
file to netboot.xyz, called exactlyMAC-<mac_with_no_:>.ipxe
- Boot the machine, wait a little then log in with
ubuntu-server
user andr00tme
password, or using the installer and the SSH key (you can exit the installer from the help menu).
- Create the installtion media from Omni, grab the PXE URL, paste it in the browser and copy paste the
#ipxe
file in netboot.xyz (using the same MAC convention) - Boot the machine and see it appear in Omni!
Note the INSTALLER_META_BASE64
string contains a base64-encode version of the tags, you don't need to regenerate the image to change them. For example, MHhjPW1hY2hpbmVMYWJlbHM6CiAgcHhlOiAnJwogIGhvbWU6ICcnCg==
is equal to
0xc=machineLabels:
pxe: ''
home: ''
this adds the pxe
and home
tags.
Make sure you set the next server tot he IP of the netboot instance and the file to netboot.xyz.efi
; at first I tried the .ikpxe
file but was too big for the legacy boot loaders; once I switch all machines to UEFI boot the error went away.