ESXi: boot from PXE server

  • Install ESXi server on a disk as usually
  • Copy files from /bootbank to the tftp server
  • Copy mboot.c32 file as well (from the isntalled partition mounted (FAT32) externally to a system or from the installer iso)
  • modify boot.cfg
$ sed -i 's@/@@g' boot.cfg
  • edit pxcelinux configuration

label esx01
   kernel esx01/mboot.c32
   append -c esx01/boot.cfg


  • /bootbank/state.tgz has to be copied back to the tftp server every time, when the ESXi configuration is modified.


Configuration files are stored in state.tgz.

For example if you want your ssh public keys to be persistent on the host:

  • extract state.tgz and extract local.tgz
  • modify files: add ./etc/ssh/keys-root/authorized_keys
  • repack local.tgz and state.tgz.


See this post:

  • Install driver on the system, that is booted from a normal disk.
  • Copy files from the running system back to the tftp server: storage driver (if Areca: scsi_arc.v00) and imgdb.tgz.
  • Append driver to the end boot.cfg (if Areca: — scsi_arc.v00)

About tompos

Hungary, Budapest
This entry was posted in ESXi, IT. Bookmark the permalink.

Leave a Reply