In this post we will see how to import VMware drivers to your SCCM boot image. Imported device drivers can be added to boot image packages or driver packages and can be installed as part of an Operating System Deployment task sequence using the Auto Apply Driver and Apply Driver Package task sequence steps. When you want to deploy a new VMware virtual machine with System Center Configuration Manager, you could encounter an error during the WinPE phase. The VM will start WinPE but there shall be reboots. This happens because Configuration Manager does not have drivers for a VMware Virtual Machine. A lot of people get stuck here because they forget to import VMXnet3 drivers to their boot image. Unlike Dell, VMware doesn’t provide the driver package file in .cab format. You have to import VMware drivers into your WinPE boot image.
Import VMware drivers to your SCCM boot image
On the VM which has VMware tools installed, the drivers are located under C>Program Files>Common Files>VMware>Drivers. Copy the driver files you want to import to a UNC accessible location (typically under Sources > Drivers). In the below screenshot you see lot of drivers, just select all and copy the folders to a shared folder.
Using the Drivers node, you import drivers into the ConfigMgr drivers catalog. Launch the Configuration Manager console. Navigate to Software Library -> Overview -> Operating Systems -> Drivers. Select Drivers. Right click on Drivers and click Import Driver.
In this step you need to specify the source folder where the drivers are present. Click on Browse and provide the path where drivers are located. If you have only a single driver to import, choose the second radio button and then browse to the exact UNC location of the .inf or txtsetup.oem file. For multiple drivers, or to allow ConfigMgr to auto-locate all available drivers in a given path including all subfolders, use the first option, Import all drivers in the following network path (UNC). Click Next.
After you specify the location of drivers, all drivers found based on the location entered on the Locate Driver page are shown in a list box, where you can review the drivers and uncheck those that you do not want to import. You can also assign the drivers to a category. Categories often are used to designate different hardware models or manufacturers. This enables you to limit the scope of drivers considered during the plug-and-play detection done by the task sequence, speeding up the process and reducing or eliminating the chance that a bad driver is installed and used. Click Categories and provide a name to it. Ensure that Enable these drivers and allow computers to install them is box is checked. Click Next.
When you have group of drivers, it needs to be added to a package and deployed to distribution points. Drivers must exist in a driver package to be accessible and usable during OSD. Click on New Package and provide a folder path where the driver package is to be stored. However note that the Driver Package Path, and the Driver Source, can’t be the same target. Click Next.
In this step you have got an option to choose which boot images to add the drivers to in addition to placing them into the driver repository and driver packages. For now we will not select any boot image, we shall configure this later. Click Next.
You can see that the drivers are now imported successfully. Click Close.
The list of imported drivers are seen under Drivers.
As you add another set of drivers, the list of drivers are listed in the same page. To make it easy, create a folder under Drivers, select the drivers and move them to a folder.
Next step is to add the drivers to the boot image. Right click on the Boot Image and click on Drivers tab, select the Add button.
Choose the driver that you want to import to the boot image. You need to double click the driver to add it. Click OK.
Once you have added the drivers to the boot image, it is essential to the update the DP’s. Click on Yes. Else you could right click on boot image and click Update Distribution Points.
The Driver Package is now imported, and you could use that while deploying the task sequence.