$theTitle=wp_title(" - ", false); if($theTitle != "") { ?>
About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like
17 Mar // php the_time('Y') ?>
In the previous part we have already setup the Ubuntu Virtual Machine and we did a build of the kernel image.
So now we can finally compile the driver, in my case I needed a driver for VMWare’s VMXNET3 Network Card.
VMXNET3 is VMWare’s paravirtualized network driver and offers better performance with less host processing power compared to the default e1000 driver.
First we need the source for the driver, we can obtain this from the VMWare Tools either from a running Linux VM or like I did by transferring the file linux.iso from /vmimages/tools-isomages from the vSphere server.
In the iso file is a single file, VMWARETO.TGZ and after unpacking we get a folder called vmware-tools-distrib.
In vmware-tools-distrib/lib/modules/source we find the vmxnet3.tar file that contains our sources. Copy the tar to the Virtual Machine and unpack it, then start a Terminal and cd to the directory where you unpacked the tar.
The first time I attempted a compile I received an error indicating that the file autoconf.h could not be found. After I found this bug report I was able to fix this by creating a link:
1 | sudo ln -s /usr/src/linux-headers-2.6.35-22-generic/include/generated/autoconf.h /usr/src/linux-headers-2.6.35-22-generic/include/linux/autoconf.h |
We can compile the driver with the make command, referencing the kernel image we created earlier:
1 | make -C /home/rweijnen/Documents/linux-2.6.27.7 SUBDIRS=$PWD SRCROOT=$PWD/. modules |
After the compile we need to copy the .ko file, in my case vmxnet3.ko to the Altiris server, it needs to be placed in
1 | eXpress\Bootwiz\platforms\<platform>\Drivers\CUSTOM\lib\modules\_vr_\kernel\opt\bdc |
And the final step is to rebuild the PXE Image, goto the PXE Configuration Manager and select Linux in the Regenerate Boot Images part and click Regenerate:
When the regeneration has been completed you must click Save and wait until all servers are updated:
In the Status tab you can check the Progress (this may take a while!):
And when it’s updated, boot the VM and check:
For your convenience the compiled binary can be downloaded below (but do know that if probably only works on the same kernel version).
VMWare VMXNET3 Linux Driver (2327 downloads )
2 Responses for "Compiling Drivers for Altiris Linux PXE Image Part 2"
The vmxnet3.ko does work that I get network connection when booted into Linux automation. ethtool shows Speed: Unknown! (10000) and Duplex: Full. what it has not fixed is our slow ghosting of the drive for VMs. It takes 21 minutes in Linux boot while it only takes 6 minutes while booted in Windows. ifconfig shows not errors, no dropped and no overrruns.
Great guide, this saved my bacon when new iron wasn’t working with Altiris!
Leave a reply