ESXi5.1 の RHEL6.4 に vmxnet3 ドライバ入れたらコケた

VMware ESXi 5.1u1 環境で、GuestOS に RHEL6.4/CentOS6.4 の 32bit 版を入れてある。ここに vmware-tools を入れる。ESXi 付属のものなので VMwareTools-9.0.5-1065307.tar.gz となる。

ただ入れただけでは各種ドライバはOS付属のものを使ったままであり、せっかくだから vmware-tools 付属の最新ドライバを使いたいと調子に乗ってインストールした。

この環境では vmware-tools の通常インストール時はこのようなメッセージが出ている。

 

The module vmxnet3 has already been installed on this system by another installer or package and will not be modified by this installer.  Use the flag --clobber-kernel-modules=vmxnet3 to override.

The module pvscsi has already been installed on this system by another installer or package and will not be modified by this installer. Use the flag --clobber-kernel-modules=pvscsi to override.

The module vmmemctl has already been installed on this system by another installer or package and will not be modified by this installer. Use the flag --clobber-kernel-modules=vmmemctl to override.

 

RHEL6.4/CentOS6.4 付属のドライバが既にあるからこのインストーラでは更新しないよ、ということだ。ドライバ類は OS 付属のものが使われる。例えばこんな感じ。

 

# modinfo vmxnet3
filename: /lib/modules/2.6.32-358.11.1.el6.i686/kernel/drivers/net/vmxnet3/vmxnet3.ko
version: 1.1.29.0-k
license: GPL v2
description: VMware vmxnet3 virtual NIC driver
author: VMware, Inc.
srcversion: 300574F157A2E481CA33E17
alias: pci:v000015ADd000007B0sv*sd*bc*sc*i*
depends:
vermagic: 2.6.32-358.11.1.el6.i686 SMP mod_unload modversions 686

 

version の項を見るとたしかに、最新ではないね。

では vmware-tools 付属のものを入れましょう。えいっ。

 

# ./vmware-install.pl --clobber-kernel-modules=pvscsi,vmxnet3,vmmemctl --default

 

バージョンは変わりました。

 

# modinfo vmxnet3
filename: /lib/modules/2.6.32-358.11.1.el6.i686/updates/vmware/vmxnet3.ko
supported: external
version: 1.1.34.0
license: GPL v2
description: VMware vmxnet3 virtual NIC driver
author: VMware, Inc.
alias: pci:v000015ADd000007B0sv*sd*bc*sc*i*
depends:
vermagic: 2.6.32-279.el6.i686 SMP mod_unload modversions 686

 

そして再起動。

このありさまです。起動しません。どうやら vmxnet3 が合わないようです。vmware-tools 付属のコンパイル済みモジュールが導入されているみたいですがこれをビルドした(?)カーネルバージョンが 2.6.32-279.el6.i686 という感じになっています。これは RHEL6.3/CentOS6.3 のものですな…。

現環境上で再コンパイルしてほしいのですけどどういうオプションを与えればよいのでしょう。わかりません。

とりあえずビルド済みモジュールをインストーラのツリーから削除して vmware-tools のインストールを実行するとソースからビルドしてくれました。これなら普通に動きます。よし。

 

# modinfo vmxnet3
filename: /lib/modules/2.6.32-358.11.1.el6.i686/updates/vmware/vmxnet3.ko
supported: external
version: 1.1.34.0
license: GPL v2
description: VMware vmxnet3 virtual NIC driver
author: VMware, Inc.
srcversion: 09E5FA27CEBE474CA7F44A1
alias: pci:v000015ADd000007B0sv*sd*bc*sc*i*
depends:
vermagic: 2.6.32-358.11.1.el6.i686 SMP mod_unload modversions 686

 

あたらしくなった。