ESXi-Custom-ISO
ESXi-Custom-ISO copied to clipboard
VMware ESXi ISO build scripts to integrate common NIC, NVME, USB NIC or Zimaboard drivers for ESXi installation on consumer hardware
☁️ Custom VMware ESXi ISO build scripts
Inject common NIC, NVME & USB NIC drivers into ESXi ISO images.
Instructions
- Install PowerCLI (see below prerequisites)
- Run the Powershell script and select from the menu your desired ESXi ISO patch level
ESXi 8 ISO: esxi8.ps1
- Builds ESXi 8.x iso with VMWare NVME & USB NIC Fling drivers + latest GhettoVCB backup. (NIC Fling was productized in 8.x)
- For earlier 800 & 80U1 builds, see script notes to select the correct USB NIC Fling
Esxi 7 ISO: esxi7.ps1
- Builds ESXi 7.x iso with VMWare NVME, NIC & USB NIC Fling drivers + latest GhettoVCB backup.
ESXi 6.7 ISO: esxi6.7.ps1 (Zimaboard compatible)
- Builds ESXi 6.7 iso with VMware Community NVME & USB NIC drivers, Zimaboard Realtek 1GbE NIC driver + latest GhettoVCB backup.
-
Zimaboard users:
- You may need to set full duplex on ESXi NIC & physical switch for better performance.
-
Zimaboard's optional RTL 8125 2.5GbE NIC driver for ESXi 6.7 can be found here
-
To manually install 2.5GbE driver:
esxcli software vib install -v net-r8125-9.011.00-10.vib
-
To manually remove 2.5GbE driver:
esxcli software vib remove -n net-r8125
-
To manually install 2.5GbE driver:
🛠️ PowerCLI & Python are prerequisites for building ESXi ISOs:
- Install Python 3.7.9 from here (Check "Add Python to PATH" a the start of the install and at the end select "Disable path length limit").
- Scripts are tested and working with Python 3.7.9, for other versions YMMV and you must adapt the below instructions to suit.
-
For ESXi 7.x and 8.x ISOs, install the CURRENT version of VMware PowerCLI:
Install-Module VMware.PowerCLI
For ESXi 6.7 ISOs, you must install PowerCLI 13.1.0 using the OFFLINE install method shown below download it here.
# 1. If a PowerCLI version later than 13.1.0 is already installed, remove this first (Get-Module VMware.PowerCLI -ListAvailable).RequiredModules | Uninstall-Module -Force # 2. Extract the contents of the downloaded PowerCLI 13.1.0 zip directly into the below path (do not create another sub directory) %ProgramFiles%\WindowsPowerShell\Modules # 3. Unblock the new PowerCLI module files Get-ChildItem -Path $env:PROGRAMFILES\WindowsPowerShell\Modules\ -Recurse | Unblock-File
-
Upgrade Python PIP via Command prompt:
C:\Users\%username%\AppData\Local\Programs\Python\Python37\python.exe -m pip install --upgrade pip
-
Add extra Python dependencies via Command prompt:
C:\Users\%username%\AppData\Local\Programs\Python\Python37\Scripts\pip3.7.exe install six psutil lxml pyopenssl
-
Set the python.exe path via PowerShell:
Set-PowerCLIConfiguration -PythonPath C:\Users\$env:USERNAME\AppData\Local\Programs\Python\Python37\python.exe
-
Run your desired version build script to start creating your custom ISO 🚀
- This repo supports creation of VMware test labs using consumer (non HCL) hardware. Not suitable for production use.
- After Broadcom's acquisition of VMWare in October 2023, the VMware Flings community download site was taken offline and its future is uncertain. A copy of the archived flings.vmware.com site can be found at https://archive.org/details/flings.vmware.com.
- The ESXi 6.7 script's additional Zimaboard RTL8168 NIC drivers were sourced from here. Optional RTL 8125 2.5GBe vibs for use with ESXi 6.7 were sourced from here.