When ESXi cmdline upgrade fails with
[MemoryError]
Please refer to the log file for more details.
then you need to raise the memory limit in the cmdline tool:
esxcli system settings advanced set -o /VisorFS/VisorFSPristineTardisk -i 0 cp /usr/lib/vmware/esxcli-software /usr/lib/vmware/esxcli-software.bak sed -i 's/mem=300/mem=500/g' /usr/lib/vmware/esxcli-software.bak mv /usr/lib/vmware/esxcli-software.bak /usr/lib/vmware/esxcli-software -f esxcli system settings advanced set -o /VisorFS/VisorFSPristineTardisk -i 1
Thanks to https://williamlam.com/2024/03/quick-tip-using-esxcli-to-upgrade-esxi-8-x-throws-memoryerror-or-got-no-data-from-process.html for sharing this tip!