You are here:   Research
  |  Login

Welcome to my blog, quickest way to find articles is usually to search for them.

Minimize
Search in All Title Contents
 
     

The Drivers Saga continues – How to Master Drivers in ConfigMgr 2012

Aug 04 2012

A new chapter in the driver's saga has been written; this time it will teach you how to master drivers in ConfigMgr 2012


Update 2012-09-01: Also see this post:
Migrating unsupported driver packages from ConfigMgr 2007 to supported packages in ConfigMgr 2012

Background story:

Since the release of ConfigMgr 2007 I have recommended taking control of your drivers, using a method known as "Total Control" as opposed to the default "Total Chaos" method in ConfigMgr. In the previous guide one of the options described was to create driver packages in ConfigMgr 2007, without even importing the drivers. This method was actually possibly because of a bug in ConfigMgr 2007 (I like to call it a feature, but never mind). I really liked that method because it was super-quick and easy to both setup and maintain, not to mention that I didn't have to store the drivers twice on the server and got an easy-to-read folder structure instead of the {guid} named folders ConfigMgr 2007 generated.

But guess what, in ConfigMgr 2012 Microsoft fixed the bug, which rendered the above method impossible. In ConfigMgr 2012 you really have to import the drivers, whether you like it or not. The change in ConfigMgr 2012 also prevents you from migrating existing driver packages from ConfigMgr 2007 (If they were created without importing the drivers). Luckily, if you did follow the previous guide, you already have a perfect driver structure, and in this post you learn how to use the exact same structure for ConfigMgr 2012.

Pros: Having to import the drivers into ConfigMgr 2012 is not all bad, in fact, it comes with benefits… First, by importing the drivers into ConfigMgr 2012 they are validated. In ConfigMgr 2007 it was possible to create a driver package with a bad driver, which you didn't learn about until the deployment blew up on you. Also, because of the new content library in ConfigMgr 2012, all duplicate files are removed, thus keeping the driver packages disk usage to a minimum.

Cons: You better have your coffee machine fully loaded - Importing the main driver source will take a good few hours… Luckily this is more or less a onetime thing, importing drivers for additional models over time is quite quick.

Driver Options available:

To take control of your drivers you have more or less two options that I have found useful. The first one is using the Apply Driver Packages feature in ConfigMgr, and the second is to programmatically set Categories on the fly and use the Auto Apply Driver features. In this post I have provided instructions for the Apply Driver Packages feature for that is the only feature that works for every deployment scenario that ConfigMgr supports. I plan to add more info on the Auto Apply Drivers feature shortly...

Option 1 - How to manage drivers in ConfigMgr 2012 using Apply Driver Packages – Total Control Freak Style
(aka as always bloody work style :) )

Successful driver management in ConfigMgr 2012 using this method involves four main steps:

  • Finding and download the drivers
  • Extract the drivers (if needed) and creating the perfect DriverSources repository
  • Import the drivers into ConfigMgr 2012, categorize them, and create driver packages
  • Assign the driver packages to your task sequence

 

Step 1 - Finding and download the drivers

Depending on vendor, you need to locate their utilities or driver source downloads

 

Step 2 - Extract the drivers (if needed) and creating the perfect DriverSources repository

  1. On your site- or file-server, create a folder structure for your driver sources, on our server (CM01), I have created the following folder structure:

    \\CM01\SCCM_Sources$\OSD\DriverSources\"Operating System"\"Vendor"\"Model"

     

    Examples:

    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64
    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\HP
    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\HP\HP EliteBook 8560w

    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\Lenovo
    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\Lenovo\ThinkPad T420

    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\Dell
    \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\Dell\Latitude E6410

  2. Extract (if needed) the drivers, and copy them to the correct folder.
     
  3. Clean-up the drivers – Don't expect the vendors to only have Windows 7 x64 drivers just because the download was named Windows 7 x64 – Often they have DOS, XP, VISTA and Windows 7 x86 versions in the same download. Delete the unwanted drivers; they will only cause issues during both import and actual deployment.

 

Step 3 - Import the drivers into ConfigMgr 2012, categorize them, and create driver packages

In this example you learn how to import drivers for HP EliteBook 8560w, repeat for additional models. Note that you should use different folder paths for your driver sources and drivers packages.

  1. Using the ConfigMgr Console, in the Software Library workplace, right-click the Drivers node and select Import Drivers.
     
  2. Use the following settings for the Import New Driver Wizard / Locate Driver page:

    Source folder: \\CM01\SCCM_Sources$\OSD\DriverSources\windows 7 x64\HP\HP EliteBook 8560w

    Specify the option for duplicate drivers: Import the driver and append a new category to the existing categories


  3. Use the following settings for the Import New Driver Wizard / Driver Details page:

    Click Categories, and create a new Category named Windows 7 x64 – HP EliteBook 8560w

     

  4. Use the following settings for the Import New Driver Wizard / Add Driver to Packages page:

    Click New Package, and create a new package with the following settings:

    Name: Windows 7 x64 – HP EliteBook 8560w


    Path: \\CM01\SCCM_Sources$\OSD\DriverPackages\windows 7 x64\HP\HP EliteBook 8560w

     

  5. Complete the Import New Driver Wizard.

     

Step 4 - Assign the driver packages to your task sequence

After creating the package(s), the task sequence needs to be configured to use them. In this example I will add the HP EliteBook 8560w package to a task sequence named Windows 7 Enterprise SP1 x64.

  1. Using the ConfigMgr Console, select Task Sequences, right-click Windows 7 Enterprise SP1 x64 task sequence and select Edit.
     
  2. In the Post Install group, disable the Auto Apply Drivers action. (Disabling is done by selecting the action and, in the Options tab, select the Disable this step check box.)
     
  3. After the disabled Post Install / Auto Apply Drivers action, add a new group name Drivers.
     
  4. After the Post Install / Drivers group, add a new group named HP.
     
  5. In the PostInstall / Drivers / HP group, add an Apply Driver Package action with the following settings:

    Name: HP EliteBook 8560w
    Driver Package: HP EliteBook 8560w
    Options tab, add a Query WMI condition: SELECT * FROM Win32_ComputerSystem WHERE Model LIKE '%HP EliteBook 8560w%'


     

  6. Repeat step 6 and 7 for additional vendors and models.

/ Johan

 

 

 

 








Happy deployment, and thanks for reading!
/ The Deployment Research team



Ami Casto

Johan Arwidmark

Blog Archive

Minimize