Attempting to install ESXi on an Intel J1900 results in an error. The boot process freezes on:

Relocating modules and starting up the kernel…

The fix can be found at: an archive of the original blog post

In short,

  1. At the ESXi boot screen, press Shift+O to open the boot options prompt.
  2. In the boot options line that appears, add the following after a space at the end of the line: ignoreHeadless=TRUE.
  3. After the installation finishes, boot into ESXi using the ignoreHeadless=TRUE boot option.
  4. Press F2, go to Troubleshooting Options, and select “Enable ESXi Shell”.
  5. Press Alt+F1 to switch to the login terminal (ESXi shell).
  6. Log in using the credentials for the root user for that ESXi host.
  7. Run the following command: esxcfg-advcfg --set-kernel "TRUE" ignoreHeadless.
  8. Check the kernel option status to make sure it was applied: esxcfg-advcfg --get-kernel ignoreHeadless.
  9. Type exit (or hit Ctrl+D) to log out of the ESXi shell.
  10. Switch back to the ESXi menu screen with Alt+F2.
  11. Disable the ESXi Shell.
  12. Reboot the ESXi host to confirm that the boot parameter was saved properly.

Enjoy running ESXi on a tiny Celeron :)