我有一个在 VMWare ESX 上运行 CentOS 5.x 的设备。
最近我将它升级到较新版本的 CentOS(仍为 5.x),并且我注意到网卡无法初始化。
如果我运行service network restart
我会得到一个错误:
[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 ]
当我检查 esx 服务器上的 NIC 属性时,我收到与之相关的奇怪提示/错误:Invalid Backing
。话虽如此,一些较旧的服务器也有同样的提示/警告,从网络角度来看运行良好,所以我认为这可能是一个转移注意力的借口。
当我运行modprobe
vmxnet3 驱动程序时,我得到了不同的服务器结果:
在旧系统上,我得到以下信息:
[root@foobox2] modprobe vmxnet3
[root@foobox2]
但是在这个新升级的系统上,如果我运行相同的命令,我会得到以下结果:
[root@foobox] modprobe vmxnet3
FATAL: Module vmxnet3 not found.
[root@foobox]
对我来说,这表明驱动程序不存在或不可用。这是一个有效的测试吗?如何确认我的 CentOS 服务器上是否安装了 vmxnet 驱动程序?
答案1
在Red Hat 5和CentOS 5中,您需要安装VMware Tools,因为vmware模块不包含主线内核。
例如,在 SUSE 11 Sp1 中,内核为2.6.32.59-0.7-default
:
grep -i vmxnet3 /boot/config-2.6.32.59-0.7-default
CONFIG_VMXNET3=m
如您所见,该模块作为外部模块集成在内核中,无论如何您都可以进行这样的测试:
modprobe -q vmxnet3 && echo "vmxnet3 installed" || echo "vmxnet3 not installed"
人 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.