Windows OS Hub
  • Windows Server
    • Windows Server 2016
    • Windows Server 2012 R2
    • Windows Server 2012
    • Windows Server 2008 R2
    • SCCM
  • Active Directory
    • Group Policies
  • Windows Clients
    • Windows 10
    • Windows 8
    • Windows 7
    • MS Office
    • Outlook
  • Virtualization
    • VMWare
    • Hyper-V
  • PowerShell
  • Exchange
  • Home
  • About

Windows OS Hub

  • Windows Server
    • Windows Server 2016
    • Windows Server 2012 R2
    • Windows Server 2012
    • Windows Server 2008 R2
    • SCCM
  • Active Directory
    • Group Policies
  • Windows Clients
    • Windows 10
    • Windows 8
    • Windows 7
    • MS Office
    • Outlook
  • Virtualization
    • VMWare
    • Hyper-V
  • PowerShell
  • Exchange

 Windows OS Hub / Virtualization / VMWare / Adding Third-Party Drivers into VMWare ESXi 6.7 ISO Image

August 13, 2019 PowerShellVMWare

Adding Third-Party Drivers into VMWare ESXi 6.7 ISO Image

In this article, we’ll consider how to add (inject) drivers into the ESXi 6.7 installation ISO image. Despite VMWare ESXi image is certified (supported) for most popular server models, it doesn’t contain hardware drivers for all of them (unlike Windows). If you try to install ESXi 6.7 image on a typical desktop computer, you are likely to face the situation when you don’t have a driver for some hardware (RAID controller, video card or network adapter, etc.) in your installation ESXi ISO.

The most frequent error you see when trying to install ESXi from the original ISO image on a desktop computer is ‘No Network Adapters’. Indeed, the ESXi image doesn’t support most of LAN NIC adapters. To install ESXi on such a computer, you will have to inject the drivers for your network adapter into your ESXi installation image.

Let’s see how to add a driver to the VMware ESXi 6.7 installation ISO. In this example we’ll show how to integrate the driver for Realtek network adapter into the VMWare ESXi image.

esxi install error No Network Adapters

To customize ESXi images VMware recommends using official tool – vSphere ESXi Image Builder. But is it very specific and requires vCenter Server Appliance (vCSA). Most system administrators use a third-party tool ESXi-Customizer instead.

Contents:
  • How to Find and Download Drivers for VMWare ESXi?
  • How to Inject a Driver into ESXi Image Using ESXi-Customizer GUI Tool?
  • Adding Drivers Using the PowerShell Script – ESXi-Customizer-PS

How to Find and Download Drivers for VMWare ESXi?

First of all, you must to find drivers for your hardware. You can search for them in VMware Compatibility Guide section on VMware website, on the vendor website, on the website of ESXi-Customizer author’s (https://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages — I have downloaded the driver net55-r8168 for my Realtek network adapter here) or using Google search (something like “Realtek NIC drivers for ESXi”).

Please note that you need the driver in one of the following formats: .vib, .tgz or .zip (offline bundle).

download ESXi vib driver net55-r8168 for Realtek network adapter

You can also find the drivers by device VID. Boot your computer using Linux LiveCD and find VID and DID of your device, for example, by running this command:

lspci -nn

Using these IDs, you can search .vib drivers in the Web.

How to Inject a Driver into ESXi Image Using ESXi-Customizer GUI Tool?

ESXi-Customizer is a graphical tool with a simple interface that allows you to make the integration of drivers and .vib files into ESXi ISO automatic.

The main drawback of ESXi-Customizer is that it only supports ESXi versions 4.1, 5.0, 5.1, and 5.5. This script has not been updated since 2016. So when trying to create an image for a newer ESXi version, an error appears.

Download ESXi-Customizer-v2.7.2.exe (https://www.v-front.de/p/esxi-customizer.html), extract the archive and run the tool (ESXi-Customizer.cmd). ESXi-Customizer does not officially support Windows 10, so when started in Windows 10, this error appears:

---------------------------
ESXi-Customizer v2.7.2 - Message
---------------------------
FATAL ERROR: Unsupported Windows Version: 10.0. At least Windows XP is required!

ESXi-Customizer FATAL ERROR: Unsupported Windows Version: 10.0

To fix it, edit the ESXi-Customizer.cmd file and comment the following line (add REM in the beginning):

if "!WinVer!" LSS "5.1" call :earlyFatal Unsupported Windows Version: !WinVer!. At least Windows XP is required & exit /b 1

edit ESXi-Customizer.cmd in windows 10

Save ESXi-Customizer.cmd file and run it again. In the next window, specify the path to the original ESXi ISO image, the driver file (VIB file or TGZ archive with drivers) and the folder, to which the resulting ISO image with the integrated driver must be saved. Uncheck the automatic update option.

ESXi-Customizer GUI Tool

Click the Run button and after a few minutes a new ESXi ISO image will appear in the target directory. You can use this image to install ESXi on your hardware.

Adding Drivers Using the PowerShell Script – ESXi-Customizer-PS

The ESXi-Customizer-PS (https://www.v-front.de/p/esxi-customizer-ps.html) PowerShell script can be used to integrate drivers and updates into the ESXi 5.x and 6.x install image. To use this script, VMware PowerCLI 5.1 or newermust be installed on your computer.

Download ESXi-Customizer-PS-v2.6.0.ps1 file (unblock the PS1 file downloaded from the Internet by checking Unblock in its properties) and start PowerCLI. Run the command:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

You can display help on the script parameters as follows:

ESXi-Customizer-PS-v2.6.0.ps1 –help

ESXi-Customizer-PS.ps1 help

To download the latest ESXi 6.7 ISO image version with the latest updates from VMware Online Depot website, run this command:

.\ESXi-Customizer-PS-v2.6.ps1 -v67

In the same way you can download other ESXi versions (-v67 | -v65 | -v60 | -v55 | -v51 | -v50).

To generate an ESXi ISO and immediately inject all offline bundles and VIB driver packages from C:\distr\esxi\driver, use this command:

.\ESXi-Customizer-PS-v2.6.0.ps1 -v67 -pkgDir C:\distr\esxi\driver

ESXi-Customizer-PS add vib drivers to the esxi image

In 15-20 minutes, the installation ESXi ISO image will appear in the targer directory.

You can modify the downloaded offline bundle (it is a ZIP archive with the ESXi installation files) by adding to it all VIB drivers from the specified directory:
.\ESXi-Customizer-PS-v2.6.0.ps1 -izip .\VMware-ESXi-6.7.0-9484548-HPE-Gen9plus-670.10.3.5.6-Sep2018.zip -pkgDir C:\distr\esxi\driver

Using the following command, you can create an ESXi ISO from your offline bundle:

.\ESXi-Customizer-PS-v2.6.0.ps1 -izip .\VMware-ESXi-6.7.0-9484548-HPE-Gen9plus-670.10.3.5.6-Sep2018.zip

In V-Front online storage there is a large VIB driver library, and you can integrate the specific drivers from this depot into your ESXi image as follows:

.\ESXi-Customizer-PS-v2.6.0.ps1 -v67 -vft -load sata-xahci,net55-r8168,net-e1000e,esx-ui

In this example, we’ll integrate these drivers into the ESXi distribution:

  • net-e1000e – a network driver for Intel I21782579LM/82574L;
  • net51-r8169 – Realtek 8168/8111/8411/8118 NIC driver (it has been removed from ESXi 5.1 and newer);
  • esx-ui — ESXi Embedded Host Client —  a convenient host web interface (used by default from esxi 5.5);
  • sata-xahci — map driver to correctly identify some SATA controllers.

As a rule, for most computers it is enough to add the following drivers into the ESXi image:

-v60 -sip -vft -load net-e1000e,net51-r8169,net55-r8168,esx-ui,sata-xahci,net51-sky2,esxcli-shell

To update the offline bundle with the latest patches from VMware repository, run this command:

.\ESXi-Customizer-PS-v2.6.0.ps1 -v67 -izip .\VMware-ESXi-6.7.0-9484548-HPE-Gen9plus-670.10.3.5.6-Sep2018.zip -update

13 comments
4
Facebook Twitter Google + Pinterest
previous post
How to Deploy SSL Certificate on a Computers Using GPO?
next post
Configuring KMS Server for MS Office 2019/2016 Volume Activation

Related Reading

Accessing USB Flash Drive from VMWare ESXi

February 26, 2021

How to Sign a PowerShell Script (PS1) with...

February 25, 2021

Configuring PowerShell Script Execution Policy

February 18, 2021

Updating Group Policy Settings on Windows Domain Computers

February 16, 2021

How to Find Inactive Computers and Users in...

January 29, 2021

13 comments

Jorge November 4, 2019 - 1:37 pm

Excellent post! I used Using ESXi-Customizer GUI Tool and it worked. Thank you very much for this great article.

Reply
Thomas January 18, 2020 - 5:51 pm

I always get an error message when trying to use the script:

**********************
nStart der Windows PowerShell-Aufzeichnung
Startzeit: 20200118184006
Benutzername: TD-VIRTUAL-IMAC\tdehl
RunAs-Benutzer: TD-VIRTUAL-IMAC\tdehl
Konfigurationsname:
Computer: TD-VIRTUAL-IMAC (Microsoft Windows NT 10.0.17763.0)
Hostanwendung: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Prozess-ID: 1160
PSVersion: 5.1.17763.771
PSEdition: Desktop
PSCompatibleVersions: 1.0, 2.0, 3.0, 4.0, 5.0, 5.1.17763.771
BuildVersion: 10.0.17763.771
CLRVersion: 4.0.30319.42000
WSManStackVersion: 3.0
PSRemotingProtocolVersion: 2.3
SerializationVersion: 1.1.0.1
**********************
Running with PowerShell version 5.1 and VMware PowerCLI version 11.5.0.14899560
Connecting the VMware ESXi Online depot …
PS>TerminatingError(Add-EsxSoftwareDepot): “Der Typeninitialisierer für “VMware.ImageBuilder.Impl.IfServer” hat eine Ausnahme verursacht.”

An unexpected error occured:
Der Typeninitialisierer für “VMware.ImageBuilder.Impl.IfServer” hat eine Ausnahme verursacht.

Any idea what causes this error? Thank you.

Reply
Thomas January 18, 2020 - 5:58 pm

Unfortunately, I cannot edit my post. Could you please delete the following lines in my previous post:

Benutzername: TD-VIRTUAL-IMAC\xxxx
RunAs-Benutzer: TD-VIRTUAL-IMAC\xxxx

Thank you.

Reply
Manuel January 18, 2020 - 9:20 pm

WARNING
the .\ESXi-Customizer-PS-v2.6.0.ps1 form your link (https://www.v-front.de/p/esxi-customizer-ps.html)
has been detected as virus infected by Avast

Reply
Henrik January 29, 2020 - 7:34 pm

Great Post! Finally one that worked for me, thanks for writing this up!

Reply
Glume February 15, 2020 - 6:14 pm

Hi mate, thanks for your post. I have a problem when do the offline packing. It shows ‘could not find a trusted signer.’ How to solve this please? Many thanks.

Reply
Glume February 15, 2020 - 7:50 pm

Fianlly I solved it, you just need add ”-nsc” at the end of the whole command line, which is ”.\ESXi-Customizer-PS-v2.6.0.ps1 -izip .\VMware-ESXi-6.7.0-Update3-15160138-HPE-Gen9plus-670.U3.10.5.0.48-Dec2019-depot.zip -pkgDir E: -nsc”, not ”–no-sig-check”, not ” $DeployNoSignatureCheck=$true”, not”-NoSignatureCheck”!!!

Reply
MAX March 16, 2020 - 3:48 am

Thanks Glume ! you saved my day. I was getting the error “[WinError 10054] An existing connection was forcibly closed by the remote host” in PowerShell. “-nsc” solved the problem.

Reply
Pascal April 3, 2020 - 4:40 am

Thanks I managed to find my nic driver and also managed to create my customized iso.

Quick and might be a stupid question: I already have my ESXI deployed how to update my ESXI with the driver.

Thanks

Reply
admin April 3, 2020 - 7:48 am

You can use vSphere Update Manager (VUM) to update ESXi or update a standalone ESXi host from cli (_https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.esxi.upgrade.doc/GUID-A4301ADA-8E02-459D-BF9D-0AD308DA5325.html)

Reply
Pascal April 3, 2020 - 6:43 am

I manage to load the driver thanks once again for the explaination!

Reply
Christian Velez July 12, 2020 - 9:32 pm

Alguien podría compartir la ISO por favor ya que no tengo mucha idea de como hacerla

Reply
jesus February 13, 2021 - 10:18 am

I got an error
the vmware.imagebuilder module is not currently supported on the core edition of powershell
powershell version 6.2.7
Any help to fix it?
Thanks

Reply

Leave a Comment Cancel Reply

Categories

  • Active Directory
  • Group Policies
  • Exchange
  • Windows 10
  • Windows 8
  • Windows 7
  • Windows Server 2016
  • Windows Server 2012 R2
  • Windows Server 2008 R2
  • PowerShell
  • VMWare
  • MS Office

Recent Posts

  • How to Troubleshoot, Repair and Rebuild the WMI Repository?

    March 2, 2021
  • Accessing USB Flash Drive from VMWare ESXi

    February 26, 2021
  • How to Sign a PowerShell Script (PS1) with a Code Signing Certificate?

    February 25, 2021
  • Change the Default Port Number (TCP/1433) for a MS SQL Server Instance

    February 24, 2021
  • How to Shadow (Remote Control) a User’s RDP session on RDS Windows Server 2016/2019?

    February 22, 2021
  • Configuring PowerShell Script Execution Policy

    February 18, 2021
  • Configuring Proxy Settings on Windows Using Group Policy Preferences

    February 17, 2021
  • Updating Group Policy Settings on Windows Domain Computers

    February 16, 2021
  • Managing Administrative Shares (Admin$, IPC$, C$, D$) in Windows 10

    February 11, 2021
  • Packet Monitor (PktMon) – Built-in Packet Sniffer in Windows 10

    February 10, 2021

Follow us

woshub.com
  • Facebook
  • Twitter
  • RSS
Popular Posts
  • Install RSAT Feature on Demand on Windows 10 1809 and Later
  • Get-ADUser: Getting Active Directory Users Info via PowerShell
  • How to Create a UEFI Bootable USB Drive to Install Windows 10 or 7?
  • Managing Printers and Drivers with PowerShell in Windows 10 / Server 2016
  • Get-ADComputer: Find Computer Details in Active Directory with PowerShell
  • PSWindowsUpdate: Managing Windows Updates from PowerShell
  • PowerShell: Get Folder Sizes on Disk in Windows
Footer Logo

@2014 - 2018 - Windows OS Hub. All about operating systems for sysadmins


Back To Top