How to Install Drivers on VMWare ESXi?

PowerADM.com / Virtualization / VMware / How to Install Drivers on VMWare ESXi?

VMware ESXi image includes the common drivers for the most popular server platforms.  Many vendors provide their own custom ESXi images with native drivers for their hardware (HPE, Lenovo, Fujitsu, Dell, Cisco, etc.). If you want to install and use VMware ESXi on non-standard or legacy hardware, or even on a home computer, you will need to download and install the drivers yourself. In this article, we will show you how to manually install the device driver on VMware ESXi.

How to Download Drivers for VMware ESXi?

Find and download the required driver for your device. Drivers for VMware ESXi can be found:

VMware Fling contains a collection of community ESXi drivers that allow you to use a wide range of popular devices with ESXi. These drivers are not officially supported in VMware HCL and are developed and maintained by the VMware community.

Drivers for VMware ESXi are delivered in VMware vSphere Installation Bundle (VIB) format.

Installing Drivers from the ESXi Host Client Web Interface

In recent versions of VMware ESXi (6.0, 6.5, 6.7, 7.x, 8.x), you can upload and install the device driver packages from the vSphere Web Client (Host Client) GUI.

  1. First, upload your *.vib driver to the datastore. Go to the Storage section, select your storage device, click Browse Datastore, create a folder, and upload the VIB file;upload driver to vmfs datastore on esxi host
  2. Then go to the Manage -> Packages section and click Install updates
  3. Enter the full path to your VIB file on Datastore. For example: /vmfs/volumes/xxxxxxx-xxxx-xxxxxxxx/Drivers/net-community_1.2.7.0-1vmw.700.1.vibinstall esxi driver via host client web interface
  4. Click the Update button to install the driver package;
  5. After some time, your driver will appear in the list of installed packages.

How to Install Driver from VMware ESXi Command Line?

You can also install drivers from the ESXi command console.

In my case when installing a new host with VMWare ESXi 6.7, it turned out that this version of the hypervisor doesn’t have a built-in driver for the Adaptec 8405 RAID controller. As a result, ESXi doesn’t see the local RAID array based on Adaptec RAID 8405 (the hypervisor is installed on the SD card, so it boots correctly).

First, allow remote connection to ESXi host via SSH: Manage-> Services -> TSM-SSH -> Start

enable ssh on vmware esxi host

Connect to ESXi host via SSH and list available datastores:

$ df -h

Upload the VIB file with the driver to the ESXi host datastore ({Your_Volume_ID}) using WinSCP, Datastore Browser, or scp:

$ scp aacraid-6.0.6.2.1.59002-16258587.zip root@host1:/vmfs/volumes/{Your_Volume_ID}/

Extract the archive:

$ unzip aacraid-6.0.6.2.1.59002-16258587.zip

The RAID controller driver is located in the aacraid-6.0.6.2.1.59002-offline_bundle-16258587.vib file. Install the driver using the esxcli command:

$ esxcli software vib install -d /vmfs/volumes/{Your_Volume_ID}/aacraid-6.0.6.2.1.59002-offline_bundle-16258587.zip

Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: Adaptec_Inc_bootbank_scsi-aacraid_6.0.6.2.1.59002-1OEM.600.0.0.2494585
VIBs Removed: VMW_bootbank_scsi-aacraid_1.1.5.1-9vmw.670.0.0.8169922
VIBs Skipped:

Reboot the ESXi host and make sure that the local drive is available for use.

local raid storage on esxi host

The following command is used to install the driver if it is supplied in ZIP Offline Bundle format:

$ esxcli software vib update -d {OFFLINE_BUNDLE}

Some drivers may be signed using third-party certificates. In this case, you will receive the error message “Could not find a trusted signer” during installation. You can allow programs and drivers with third-party certificates to be installed in a test or non-productive environments by changing the Software Acceptance Level:

$ esxcli software acceptance set --level=CommunitySupported

Host acceptance level changed to 'CommunitySupported'.

esxcli change software acceptance to CommunitySupported

Available options are: VMwareCertified | VMwareAccepted | PartnerSupported | CommunitySupported.

Or you can ignore the certificate check during installation:

$ esxcli software vib install -d file --force --no-sig-check

Check that your driver is in the list of installed drivers:

$ esxcli software vib list |grep aacraid

esxcli software vib list drivers

In some cases, you may need to know the correct device ID to find and download the correct driver for your hardware.

You can view a complete list of devices available on the ESXi host:

$ lspci -v

You can apply a filter by device class (for example, Class 0200 is used for network adapters):

$ lspci -v | grep "Class 0200" -B 1

lspci - vmware esxi list devices

You can find out the full name and model of the device from the output of the command.

Inject Drivers into the ESXi Installation Image

When deploying a new host, you cannot proceed with the hypervisor installation if the ESXi installer does not see any network adapters (No Network Adapters) or local drives.

vmware esxi installer does not detect local disks

In this case, you must inject drivers for your network adapter or disk controller into the ESXi installation ISO image. You can use the third-party PowerShell script ESXi-Customizer-PS to do this.

Download the ESXi-Customizer-PS.ps1 script from GitHub (https://github.com/VFrontDe/ESXi-Customizer-PS/releases).

You can then generate an ISO image with the required version of ESXi and immediately add drivers from the specified directory using the PowerShell command:

.\ESXi-Customizer-PS.ps1 –v70 -pkgDir C:\esxi\driver

After some time, an ESXi 7.0 installation ISO image with integrated drivers will appear in the target directory.

Leave a Reply

Your email address will not be published. Required fields are marked *