‘Slipstreaming’ drivers in the ESX4(i) install ISO

OK, here’s the deal, I downloaded the last ESX4 iso (with update 1-208167) and installed ESX on a brand new Dell R710.
The onboard Broadcom was detected and installed, but to my surprise the 2 INTEL QUAD port cards were not found and therefore not installed.

After some searching I found this iso, named:
vmware-esx-drivers-net-igb_400.1.3.19.12-1.0.4.164009.166506.ISO
It’s possible to use this iso during the manual installation, the intaller will ask you if you want to load additional drivers.  Tried that, and it worked, it found the quad port nics.

So why slipstream ?
Well, I needed to create an unattended installation for a customer and it’s not really unattended if you need to go swapping iso’s during the install phase.

Ok, let’s roll:
The files we will be working with are:

PACKAGES.XML  (in the root)
packageData.pkl (in the VMWARE\RPMS folder)
TRANS.TBL (in the VMWARE\RPMS folder)

Extract these  files from the ISO to a folder.
Oh yeah, before you go launching your favorite ISO software, do NOT, I repeat, do NOT use PowerISO.
PowerISO changes the MD5 checksum of the ISO, making it useless.
I found out the hard way. Instead I recommend MagicISO.

let’s start with putting the newer driver in the \VMWARE\RPMS folder.
Extract the vmware-esx….ISO file you downloaded from VMware.
Goto the .rpm folder and insert the vmware-esx…..x86_64.rpm to the \VMWARE\RPMS folder of the ESX iso.

 

You can delete the other (older)  vmware-esx-drivers-net-igb file as we will no longer need it.

Next, we need to change the TRANS.TBL file, so that it contains the new file.
Use a text editor such as Notepad++ to change any of the files in this tutorial.
do NOT use windows notepad, wordpad, word or whatever texteditor incapable of handling unix formatted files.

In this case, you will find an entry In the Trans.tbl file on line 280 called:
“F VMWARE_ESX_DRIVERS_NET_IGB_.;1”
If you find the line, scroll to the right, and you will see the name of the old rpm.
Only change the right part of this line to the name of the new rpm.

 

Save and close the file.
Next, edit the packages.xml file in the root of the extracted iso.
Goto line 91 and change the old entry to the new one:

 

Save and close.
Next up, packageData.pkl in the \VMWARE\RPMS folder
Goto line 2245 (yes, it’s a long file J also, you can search for “igb” and it will bring you right there)
And as you already guessed, change the entry there.

 

Save and close.
Now, update your ESX iso file with the edited files and new rpm.
After installation with the new ISO, it “should” detect the intel quad port cards.

Hope this helps you out, the same way it did for me 🙂

 

Advertisements
    • Fidy
    • February 9th, 2010

    Thank You for this Tutorial.
    It helped me to save a lot of time;)

    In my case, I needed to slipstream additional drivers (FCoE driver from Emulex & Qlogic). I added new entries in both PACKAGES.XML & TRANS.TBL, but in packageData.pkl, I just updated entries for unused drivers.

    Do you know how to add additional entries in the packageData.pkl file? I didn’t really understand the Syntax of the File 😉

    Thx & kr,
    Fidy

    • patrickvanbeek
    • February 9th, 2010

    Well, that’s a good question.
    I’m not sure how to do this.
    This guide is only able to update existing drivers.
    If you need to add drivers I guess you will need to look at the createinstdepot.py script located in the MISC folder.
    I believe that script is used to create or change the repository.
    I have not experimented with that, yet.
    If you do find out, you can always let me know 🙂

    Hope it helps,
    Patrick

  1. Hi Patrick,

    great post, one question though. Where you able to do an unattended install from the intel adapters after adding the new intel drivers?

    Cheers,

    Arne Fokkema

      • patrickvanbeek
      • April 19th, 2010

      Hi Arne,

      Let me first take the chance to thank you for your blog, it’s been helpfull for me in past couple of times.

      To answer your question, I actually have no idea.
      The process I use is basically the same as you would add use “load additional drivers” during the setup process, so you should be able to use them.
      However I used the onboard broadcom during the install, and used this method to recognize the intel card.

      I think that answers you question, altough I’m not 100% sure 🙂 let me know if you need more info, I’m always willing to help

      Patrick

      • Thanks for the kind words.

        When I slipstream the drivers, the intel adapters cannot be used to boot from. But the driver will be installed during setup. So your sollution works great. Thanks again.

    • Matt Van Opens
    • May 10th, 2010

    Hi,

    So I’ve tried this with a broadcom driver update but while it attempts to load the file durring the install it errors out with an error “Could Not Download file:///mnt/source/vmware/rpms/ in two attemps” . I’ve double/triple checked my files and everything looks good, the only thing that I am concerned about two bnx2 files (one for bnx2 and bnx2x) and we are just updating the bnx2x. I caught some wrong syntax the after the first edit (I edited the wrong line) but that still hasn’t clearned my error.

    Has anyone else gotten this error and fixed it?

    Otherwise this has been a great article, thanks.

    Matt

  2. Hi!

    Wondering if this procedure works in 4.1 too? I looked through the 4.1 CD and didn’t see “TRANS.TBL”. Also, I just added an .rpm and MagicISO changed the MD5 hash. Any tips?

    Thanks!

      • patrickvanbeek
      • November 6th, 2010

      Hi Dustin,
      to be honest, I don’t know.
      Maybe the drivers are now included in 4.1 so it might not be necessary.
      I don’t think I’m able to test this in the future, but you might want to check with afokkema (a few replies up).
      He’s an expert on this (more than I am 🙂 )

      Good luck!!

  3. Hi Patrick,

    unfortunately, the drivers I need installed are NOT included on the CD. Perhaps you can shoot an email to ‘afokkema’ and hook him and I up.

    If we get something working, I’ll post back. Also, I’m trying to ask the question in the ESX4 community on the VMware site.

    Thanks for the reply!

  4. Hi Patrick,

    here’s the thread I posted on the VMware communities:
    http://communities.vmware.com/thread/291682

    Take Care>>>Dustin

      • patrickvanbeek
      • November 8th, 2010

      Dustin, I’ve asked Arne to look at your question on the vmware forum, I hope he finds the time.

      Just wondering, did you try installing 4.1i instead of 4.1 to see if it detects the card?

      Greets

  5. Hi Patrick,

    At the site I’m at, we cannot use ESXi. So to answer your question, no.

    So I’m pounding sand trying to figure this out with regular ESX. :>)

    • Avi
    • November 22nd, 2011

    Patrick. I’m looking at my ESXi 4.1 iso and I dont see a \VMWARE\RPMS folder. How do I go about adding new drivers to my ESX installer.

    • patrickvanbeek
    • November 22nd, 2011

    Hi Avi,
    That might be correct, the disk layout changed from 4.0 to 4.1.
    I haven’t had the need to slipstream a driver in 4.1, so I haven’t been looking into it.

    Also check this link that has been posted above:
    http://communities.vmware.com/thread/291682

    Also2, see if the hardware supplier has customized ESX 4.1 iso files for installation.

    good luck,
    Patrick

    • Larry
    • October 16th, 2012

    Patrick,
    What can be used to edit the trans.tbl on a windows box? Also will this allow the nic to be used as a management nic? The link to the iso comes up as not found, is it available somewhere else?

      • patrickvanbeek
      • October 16th, 2012

      Larry,

      To be honest, I can’ recall. I haven’t been using vmware since April (which reminds me to update this blog 🙂 )
      But as the instructions say, open the file with “notepad ++”, don’t use regular notepad, it won’t work.
      I didn’t understand the last part of you question. IF the driver is slipstreamed correctly, it should work.
      Again, I’m no longer up to date with this procedure, but I hope you’re helped with it.

      regards,
      Patrick

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: