How can I confirm if my vmxnet driver is installed on my CentOS server?

I have an appliance running CentOS 5.x on VMWare ESX.

Quite recently I upgraded it to a newer version of CentOS (still in 5.x) and I noticed that the network card wouldn't initialize.

If I run service network restart I get an error:

[root@foobox] service network restart 
Shutting down loopback interface:                 [   OK   ]
Bringing up loopback interface:                   [   OK   ]
Bringing up interface eth0:   e1000 device eth0 does not seem to be present, delaying initialization   [ FAILED ]

When I check the NIC properties on my esx server, I get an odd note/error associated with it: Invalid Backing. That being said, some older servers have this same note/warning and are working fine from a network perspective so I think this might be a red herring.

When I run modprobe for the vmxnet3 driver, I'm getting different results for servers:

On old systems, I get the following:

[root@foobox2] modprobe vmxnet3
[root@foobox2]

However on this newly upgraded system, if I run the same command, I get the following:

[root@foobox] modprobe vmxnet3
FATAL: Module vmxnet3 not found. 
[root@foobox]

To me, this suggests that the driver isn't present or available. Is this a valid test? How can I confirm if the vmxnet driver is installed on my CentOS server?


In Red Hat 5 and CentOS 5, you need to install VMware Tools, because the vmware modules aren't include the main line kernel.

For example, in SUSE 11 Sp1 with kernel 2.6.32.59-0.7-default:

grep -i vmxnet3 /boot/config-2.6.32.59-0.7-default 
CONFIG_VMXNET3=m

as you can see the module is integrated in the kernel as external module, anyway you can do a test like this:

modprobe -q vmxnet3 && echo "vmxnet3 installed" || echo "vmxnet3 not installed"

man modprobe:

RETURN VALUE     

  modprobe returns 0 on success, 1 on an unspecified error and 2 if the module is not supported. Use the --allow-unsupported-modules option to force using an  unsup-
   ported module.